[llvm-commits] [llvm-gcc-4.2] r43913 [60/80] - in /llvm-gcc-4.2/trunk: boehm-gc/ boehm-gc/Mac_files/ boehm-gc/cord/ boehm-gc/doc/ boehm-gc/include/ boehm-gc/include/private/ boehm-gc/tests/ libffi/ libffi/include/ libffi/src/ libffi/src/alpha/ libffi/src/arm/ libffi/src/cris/ libffi/src/frv/ libffi/src/ia64/ libffi/src/m32r/ libffi/src/m68k/ libffi/src/mips/ libffi/src/pa/ libffi/src/powerpc/ libffi/src/s390/ libffi/src/sh/ libffi/src/sh64/ libffi/src/sparc/ libffi/src/x86/ libffi/testsuite/ libffi/testsuite/config/ li...

Bill Wendling isanbard at gmail.com
Thu Nov 8 14:57:11 PST 2007


Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceDetailHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceDetailHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceDetailHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceDetailHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,169 @@
+/* ServiceDetailHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+import gnu.CORBA.ServiceDetailHolder;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations on the Service Detail.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class ServiceDetailHelper
+{
+  /**
+   * The service detail repository id.
+   */
+  private static String _id = "IDL:omg.org/CORBA/ServiceDetail:1.0";
+
+  /**
+   * Extract the service detail info from the given {@link Any}
+   *
+   * @param a the Any to extract from.
+   *
+   * @return the extracted detail.
+   *
+   * @throws BAD_OPERATION if the parameter holds something different
+   * from the ServiceDetail.
+   */
+  public static ServiceDetail extract(Any a)
+  {
+    try
+      {
+        return ((ServiceDetailHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION();
+        bad.initCause(ex);
+        bad.minor = Minor.Any;
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the service detail repository id.
+   *
+   * @return the service detail repository id,
+   * <code>IDL:omg.org/CORBA/ServiceDetail:1.0</code>, always.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the service detail into the given {@link Any}.
+   *
+   * @param a the Any to insert into.
+   *
+   * @param that the detail to insert.
+   */
+  public static void insert(Any a, ServiceDetail that)
+  {
+    a.insert_Streamable(new ServiceDetailHolder(that));
+  }
+
+  /**
+   * Read the service detail information from the given CDR
+   * intput stream. First reads the type, then the flexible
+   * length byte sequence.
+   *
+   * @param istream a stram to read from.
+   *
+   * @return the loaded service detail.
+   */
+  public static ServiceDetail read(InputStream istream)
+  {
+    ServiceDetail value = new ServiceDetail();
+    value.service_detail_type = istream.read_ulong();
+
+    int l = istream.read_long();
+    value.service_detail = new byte[ l ];
+    istream.read_octet_array(value.service_detail, 0, l);
+    return value;
+  }
+
+  /**
+   * Get the typecode of the service detail, assuming to be it
+   * a structure with the two fields.
+   *
+   * @return the newly created or cached typecode value.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    
+    StructMember[] members = new StructMember[ 2 ];
+    
+    TypeCode type =
+      orb.create_alias_tc(_id, "ServiceDetailType",
+                          orb.get_primitive_tc(TCKind.tk_ulong)
+      );
+    members [ 0 ] = new StructMember("service_detail_type", type, null);
+    
+    TypeCode data =
+      orb.create_sequence_tc(0, orb.get_primitive_tc(TCKind.tk_octet));
+    members [ 1 ] = new StructMember("service_detail", data, null);
+    
+    return orb.create_struct_tc(id(), "ServiceDetail", members);
+  }
+
+  /**
+   * Write the service detail data to the given CDR output stream.
+   * Writes the detail type first, then the detail type data
+   * as the variable length byte sequence.
+   *
+   * @param ostream a stream to write into.
+   * @param value a value to write.
+   */
+  public static void write(OutputStream ostream, ServiceDetail value)
+  {
+    ostream.write_ulong(value.service_detail_type);
+    ostream.write_long(value.service_detail.length);
+    ostream.write_octet_array(value.service_detail, 0,
+      value.service_detail.length
+    );
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformation.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformation.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformation.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformation.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,88 @@
+/* ServiceInformation.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Stores information about the CORBA service, available from some ORB.
+ *
+ * This class is part of the service information support, but the
+ * 1.4 API specification states that this support should be not implemented.
+ *
+ * @see ORB#get_service_information
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class ServiceInformation
+  implements IDLEntity
+{
+  /**
+   * The array of service details, defining the various aspects of this
+   * service.
+   */
+  public ServiceDetail[] service_details;
+
+  /**
+   * The array, defining various options of this service.
+   */
+  public int[] service_options;
+
+  /**
+   * Create an unitialised instance of the service information.
+   */
+  public ServiceInformation()
+  {
+  }
+
+  /**
+   * Create an instance of the service information, intialised with
+   * the passed values.
+   *
+   * @param _service_options the service options.
+   * @param _service_details the service details.
+   */
+  public ServiceInformation(int[] _service_options,
+                            ServiceDetail[] _service_details
+                           )
+  {
+    service_options = _service_options;
+    service_details = _service_details;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformationHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformationHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformationHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformationHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,147 @@
+/* ServiceInformationHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Helper operations for the service information.
+ *
+ * This class is part of the service information support, but the
+ * 1.4 API specification states that this support should be not implemented.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class ServiceInformationHelper
+{
+  /**
+   * The service information repository id.
+   */
+  private static String _id = "IDL:org/omg/CORBA/ServiceInformation:1.0";
+
+  /**
+   * Extract the service information from the given Any.
+   */
+  public static ServiceInformation extract(Any a)
+  {
+    return read(a.create_input_stream());
+  }
+
+  /**
+   * Get the service information repositroy id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the service information into the given Any.
+   */
+  public static void insert(Any a, ServiceInformation that)
+  {
+    OutputStream out = a.create_output_stream();
+    a.type(type());
+    write(out, that);
+    a.read_value(out.create_input_stream(), type());
+  }
+
+  /**
+   * Read the service information from the given CDR input stream.
+   */
+  public static ServiceInformation read(InputStream istream)
+  {
+    ServiceInformation value = new ServiceInformation();
+    value.service_options = LongSeqHelper.read(istream);
+
+    int n = istream.read_ulong();
+    value.service_details = new ServiceDetail[ n ];
+
+    for (int i = 0; i < n; i++)
+      value.service_details [ i ] = ServiceDetailHelper.read(istream);
+    return value;
+  }
+
+  /**
+   * Get the service information typecode.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    
+    StructMember[] members = new StructMember[ 2 ];
+    TypeCode member;
+    
+    member =
+      orb.create_alias_tc("IDL:omg.org/CORBA/ServiceOptionSeq:1.0",
+                          "ServiceOptionSeq", LongSeqHelper.type()
+      );
+    
+    members [ 0 ] = new StructMember("service_options", member, null);
+    
+    member = ServiceDetailHelper.type();
+    member = orb.create_sequence_tc(0, member);
+    member =
+      orb.create_alias_tc("IDL:omg.org/CORBA/ServiceDetailSeq:1.0",
+                          "ServiceDetailSeq", member
+      );
+    members [ 1 ] = new StructMember("service_details", member, null);
+    
+    return
+    orb.create_struct_tc(ServiceInformationHelper.id(),
+                         "ServiceInformation", members
+    );
+  }
+
+  /**
+   * Write the service information to the given CDR output stream.
+   */
+  public static void write(OutputStream ostream, ServiceInformation value)
+  {
+    LongSeqHelper.write(ostream, value.service_options);
+
+    ostream.write_ulong(value.service_details.length);
+
+    for (int i = 0; i < value.service_details.length; i++)
+      ServiceDetailHelper.write(ostream, value.service_details [ i ]);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformationHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformationHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformationHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ServiceInformationHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,101 @@
+/* ServiceInformationHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A holder for the service information.
+ *
+ * This class is part of the service information support, but the
+ * 1.4 API specification states that this support should be not implemented.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class ServiceInformationHolder
+  implements Streamable
+{
+  /**
+   * A wrapped value.
+   */
+  public ServiceInformation value;
+
+  /**
+   * Create an unitialised instance.
+   */
+  public ServiceInformationHolder()
+  {
+  }
+
+  /**
+   * Create the instance where the stored service information
+   * s intialised into the given value.
+   */
+  public ServiceInformationHolder(ServiceInformation initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Read the service information from the given CDR input stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = ServiceInformationHelper.read(in);
+  }
+
+  /**
+   * Get the typecode of the service information.
+   */
+  public TypeCode _type()
+  {
+    return ServiceInformationHelper.type();
+  }
+
+  /**
+   * Write the stored service information into the given
+   * CDR output stream.
+   */
+  public void _write(OutputStream out)
+  {
+    ServiceInformationHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SetOverrideType.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SetOverrideType.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SetOverrideType.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SetOverrideType.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,136 @@
+/* SetOverrideType.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Defines the instruction, how the newly specified policies can be
+ * taken into consideration. The policies can be either
+ * added to the current policies or replace them.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public class SetOverrideType
+  implements Serializable, IDLEntity
+{
+  /**
+   * Use v 1.4 serialVersionUID for interoperability.
+   */
+  private static final long serialVersionUID = -2761857189425106972L;
+
+  /**
+   * Add the new policies to the existing policies.
+   */
+  public static final int _ADD_OVERRIDE = 1;
+
+  /**
+   * Replace the new existing policies by the new policies.
+   */
+  public static final int _SET_OVERRIDE = 0;
+
+  /**
+   * Add the new policies to the existing policies.
+   * An instance of SetOverrideType, initialized to _ADD_OVERRIDE.
+   */
+  public static final SetOverrideType ADD_OVERRIDE =
+    new SetOverrideType(_ADD_OVERRIDE);
+
+  /**
+   * Replace the new existing policies by the new policies.
+   * An instance of SetOverrideType, initialized to _SET_OVERRIDE.
+   */
+  public static final SetOverrideType SET_OVERRIDE =
+    new SetOverrideType(_SET_OVERRIDE);
+
+  private final int _value;
+
+  /**
+   * No other instances can be created.
+   */
+  protected SetOverrideType(int a_value)
+  {
+    _value = a_value;
+  }
+
+  /**
+   * Returns the SetOverrideType, matching the given integer constant
+   * @param kind one of _ADD_OVERRIDE or _SET_OVERRIDE.
+   *
+   * @return one of ADD_OVERRIDE or SET_OVERRIDE.
+   *
+   * @throws BAD_PARAM if the parameter is not one of these two values.
+   */
+  public static SetOverrideType from_int(int kind)
+  {
+    switch (kind)
+      {
+        case _ADD_OVERRIDE :
+          return ADD_OVERRIDE;
+
+        case _SET_OVERRIDE :
+          return SET_OVERRIDE;
+
+        default :
+          throw new BAD_PARAM("invalid add/override type " + kind);
+      }
+  }
+
+  /**
+   * Returns a short string representation.
+   *
+   * @return either "add" or "replace".
+   */
+  public String toString()
+  {
+    return (_value == _ADD_OVERRIDE) ? "add" : "replace";
+  }
+
+  /**
+   * Returns the value, representing stored instruction.
+   *
+   * @return one of ADD_OVERRIDE or SET_OVERRIDE
+   */
+  public int value()
+  {
+    return _value;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SetOverrideTypeHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SetOverrideTypeHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SetOverrideTypeHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SetOverrideTypeHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,119 @@
+/* SetOverrideTypeHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.SetOverrideTypeHolder;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations for the definition kind.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class SetOverrideTypeHelper
+{
+  /**
+   * Insert the definition kind into the given Any.
+   */
+  public static void insert(Any any, SetOverrideType that)
+  {
+    any.insert_Streamable(new SetOverrideTypeHolder(that));
+  }
+
+  /**
+   * Extract the definition kind from the given Any.
+   */
+  public static SetOverrideType extract(Any any)
+  {
+    return ((SetOverrideTypeHolder) any.extract_Streamable()).value;
+  }
+
+  /**
+   * Get the definition kind typecode (enumeration, named "SetOverrideType").
+   * The typecode states that the enumeration can obtain one of
+   * the following values: SET_OVERRIDE ,ADD_OVERRIDE .
+   */
+  public static TypeCode type()
+  {
+    String[] members =
+      new String[]
+                 {
+                  "SET_OVERRIDE" ,"ADD_OVERRIDE" 
+                 };
+    
+    return
+    OrbRestricted.Singleton.create_enum_tc(id(), "SetOverrideType",
+                                           members
+    );
+  }
+
+  /**
+   * Get the definition kind repository id.
+   *
+   * @return "IDL:omg.org/CORBA/SetOverrideType:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CORBA/SetOverrideType:1.0";
+  }
+
+  /**
+   * Read the enumeration value (as int) from the CDR intput stream.
+   *
+   * @param istream a stream to read from.*
+   */
+  public static SetOverrideType read(InputStream istream)
+  {
+    return SetOverrideType.from_int(istream.read_long());
+  }
+
+  /**
+   * Write the enumeration value (as int) to the CDR output stream.
+   *
+   * @param ostream a stream to write into.
+   * @param value a value to write.
+   */
+  public static void write(OutputStream ostream, SetOverrideType value)
+  {
+    ostream.write_long(value.value());
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,127 @@
+/* ShortHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.PrimitiveTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A holder for CORBA <code>short</code> that is mapped into
+ * java <code>short</code>.
+ *
+ * The holders have several application areas. The end user usually
+ * sees them implementing CORBA methods where the primitive type
+ * is passed by reference. While CORBA (or, for example, C) supports
+ * this, the java does not and a wrapper class is required.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class ShortHolder
+  implements Streamable
+{
+  /**
+   * The default type code for this holder.
+   */
+  private static final TypeCode t_short =
+    new PrimitiveTypeCode(TCKind.tk_short);
+
+  /**
+   * The <code>short</code> (CORBA <code>short</code>) value,
+   * held by this ShortHolder.
+   */
+  public short value;
+
+  /**
+   * Constructs an instance of ShortHolder,
+   * initializing {@link #value} to <code>0</code>.
+   */
+  public ShortHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of ShortHolder,
+   * initializing {@link #value} to the given <code>short</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public ShortHolder(short initial_value)
+  {
+    value = initial_value;
+  }
+
+  /**
+   * Fill in the {@link value } field by reading the required data
+   * from the given stream. For <code>short</code>, the functionality
+   * is delegated to
+   * {@link org.omg.CORBA.portable.InputStream#read_short}.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = input.read_short();
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  public TypeCode _type()
+  {
+    return t_short;
+  }
+
+  /**
+   * Write the {@link value } field to the given stream.
+   * For <code>short</code>, the functionality
+   * is delegated to
+   * {@link org.omg.CORBA.portable.OutputStream#write_short(short) }.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_short(value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortSeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortSeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortSeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortSeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,142 @@
+/* ShortSeqHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.TypeCodePackage.BadKind;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Provides static helper methods for working with
+ * CORBA sequence of <code>short</code>
+ * (<code>ShortSeq</code>).
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class ShortSeqHelper
+{
+  /**
+   * Extract the <code>short[]</code> from the
+   * given {@link Any}. This implementation expects the
+   * {@link Any} to hold the instance of {@link ShortSeqHolder}
+   * that is returned by {@link Any#extract_Streamable() }.
+   *
+   * @param a an Any to extract the array from.
+   *
+   * @return the extracted array.
+   *
+   * @throws ClassCastException if the Any contains something other than the
+   * the {@link ShortSeqHolder}.
+   */
+  public static short[] extract(Any a)
+  {
+    ShortSeqHolder h = (ShortSeqHolder) a.extract_Streamable();
+    return h.value;
+  }
+
+  /**
+   * Returns the agreed Id, delegating functionality to
+   * the {@link #type()}.id().
+   */
+  public static String id()
+  {
+    try
+      {
+        return type().id();
+      }
+    catch (BadKind ex)
+      {
+        // Should never happen under correct work.
+        throw new Error("Please report this bug.", ex);
+      }
+  }
+
+  /**
+  * Insert into the given <code>short[]</code> into the
+  * given {@link Any}. This implementation first creates
+  * a {@link ShortSeqHolder} and then calls
+  * {@link Any#insert_Streamable(Streamable)}.
+  *
+  * @param into the target Any.
+  * @param that the array to insert.
+  */
+  public static void insert(Any into, short[] that)
+  {
+    ShortSeqHolder holder = new ShortSeqHolder(that);
+    into.insert_Streamable(holder);
+  }
+
+  /**
+   * Reads the <code>short[]</code> from the CORBA input stream.
+   *
+   * @param input the CORBA (not java.io) stream to read from.
+   * @return the value from the stream.
+   */
+  public static short[] read(InputStream input)
+  {
+    short[] value = new short[ input.read_long() ];
+    input.read_short_array(value, 0, value.length);
+    return value;
+  }
+
+  /**
+   * Creates and returns a new instance of the TypeCode,
+   * corresponding the CORBA <code>ShortSeq</code>.
+   * The length of the sequence is left with the initial
+   * value 0.
+   */
+  public static TypeCode type()
+  {
+    return new ArrayTypeCode(TCKind.tk_short);
+  }
+
+  /**
+   * Writes the <code>short[]</code> into the given stream.
+   *
+   * @param output the CORBA (not java.io) output stream to write.
+   * @param value the value that must be written.
+   */
+  public static void write(OutputStream output, short[] value)
+  {
+    output.write_long(value.length);
+    output.write_short_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortSeqHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortSeqHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortSeqHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ShortSeqHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,126 @@
+/* ShortSeqHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A sequence holder for CORBA <code>ShortSeq</code> that is mapped into
+ * java <code>short[]</code>.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class ShortSeqHolder
+  implements Streamable
+{
+  /**
+   * The <code>short[]</code> (CORBA <code>ShortSeq</code>) value,
+   * held by this ShortSeqHolder.
+   */
+  public short[] value;
+
+  /**
+   * The type code for this holder. Each holder has a different instance.
+   */
+  private final ArrayTypeCode typecode =
+    new ArrayTypeCode(TCKind.tk_short);
+
+  /**
+   * Constructs an instance of ShortSeqHolder,
+   * initializing {@link #value} to <code>null</code>.
+   */
+  public ShortSeqHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of ShortSeqHolder,
+   * initializing {@link #value} to the given <code>short[]</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public ShortSeqHolder(short[] initial_value)
+  {
+    value = initial_value;
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Fill in the {@link value } field by reading the required data
+   * from the given stream. This method first reads the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.InputStream#read_short_array }.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = new short[ input.read_long() ];
+    input.read_short_array(value, 0, value.length);
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  public TypeCode _type()
+  {
+    return typecode;
+  }
+
+  /**
+   * Write the {@link value } field to the given stream.
+   * This method first writes the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.OutputStream#write_short_array }.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_long(value.length);
+    output.write_short_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,128 @@
+/* StringHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.StringTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A holder for CORBA <code>string</code> that is mapped into
+ * java <code>String</code>.
+ *
+ * The holders have several application areas. The end user usually
+ * sees them implementing CORBA methods where the primitive type
+ * is passed by reference. While CORBA (or, for example, C) supports
+ * this, the java does not and a wrapper class is required.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class StringHolder
+  implements Streamable
+{
+  /**
+   * The default type code for this holder.
+   */
+  private static final StringTypeCode t_string =
+    new StringTypeCode(TCKind.tk_string);
+
+  /**
+   * The <code>String</code> (CORBA <code>string</code>) value,
+   * held by this StringHolder.
+   */
+  public String value;
+
+  /**
+   * Constructs an instance of StringHolder,
+   * initializing {@link #value} to <code>null</code>.
+   */
+  public StringHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of StringHolder,
+   * initializing {@link #value} to the given <code>String</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public StringHolder(String initial_value)
+  {
+    value = initial_value;
+  }
+
+  /**
+   * Fill in the {@link #value } field by reading the required data
+   * from the given stream. For <code>string</code>, the functionality
+   * is delegated to
+   * {@link org.omg.CORBA.portable.InputStream#read_string}.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = input.read_string();
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder. The {@link TypeCode#length()} method of the
+   * returned typecode always returns 0.
+   */
+  public TypeCode _type()
+  {
+    return t_string;
+  }
+
+  /**
+   * Write the {@link #value } field to the given stream.
+   * For <code>string</code>, the functionality
+   * is delegated to
+   * {@link org.omg.CORBA.portable.OutputStream#write_string(String) }.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_string(value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringSeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringSeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringSeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringSeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,144 @@
+/* StringSeqHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.TypeCodePackage.BadKind;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Provides static helper methods for working with
+ * CORBA <code>string</code> array.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class StringSeqHelper
+{
+  /**
+   * Extract the <code>String[]</code> from the
+   * given {@link Any}. This implementation expects the
+   * {@link Any} to hold the instance of {@link StringSeqHolder}
+   * that is returned by {@link Any#extract_Streamable() }.
+   *
+   * @param a an Any to extract the array from.
+   *
+   * @return the extracted array.
+   *
+   * @throws ClassCastException if the Any contains something other than the
+   * the {@link StringSeqHolder}.
+   */
+  public static String[] extract(Any a)
+  {
+    StringSeqHolder h = (StringSeqHolder) a.extract_Streamable();
+    return h.value;
+  }
+
+  /**
+   * Returns the agreed Id, delegating functionality to
+   * the {@link #type()}.id().
+   */
+  public static String id()
+  {
+    try
+      {
+        return type().id();
+      }
+    catch (BadKind ex)
+      {
+        // Should never happen under correct work.
+        throw new Error("Please report this bug.", ex);
+      }
+  }
+
+  /**
+  * Insert into the given <code>String[]</code> into the
+  * given {@link Any}. This implementation first creates
+  * a {@link StringSeqHolder} and then calls
+  * {@link Any#insert_Streamable(Streamable)}.
+  *
+  * @param into the target Any.
+  * @param that the array to insert.
+  */
+  public static void insert(Any into, String[] that)
+  {
+    StringSeqHolder holder = new StringSeqHolder(that);
+    into.insert_Streamable(holder);
+  }
+
+  /**
+   * Reads the <code>String[]</code> from the CORBA input stream.
+   *
+   * @param input the CORBA (not java.io) stream to read from.
+   * @return the value from the stream.
+   */
+  public static String[] read(InputStream input)
+  {
+    String[] value = new String[ input.read_long() ];
+    for (int i = 0; i < value.length; i++)
+      value [ i ] = input.read_string();
+    return value;
+  }
+
+  /**
+   * Creates and returns a new instance of the TypeCode,
+   * corresponding the CORBA <code>string[]</code>.
+   * The length of the sequence is left with the initial
+   * value 0.
+   */
+  public static TypeCode type()
+  {
+    return new ArrayTypeCode(TCKind.tk_string);
+  }
+
+  /**
+   * Writes the <code>String[]</code> into the given stream.
+   *
+   * @param output the CORBA (not java.io) output stream to write.
+   * @param value the value that must be written.
+   */
+  public static void write(OutputStream output, String[] value)
+  {
+    output.write_long(value.length);
+
+    for (int i = 0; i < value.length; i++)
+      output.write_string(value [ i ]);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringSeqHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringSeqHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringSeqHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringSeqHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,131 @@
+/* StringSeqHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A sequence holder for CORBA <code>string[]</code> that is mapped into
+ * java <code>String[]</code>.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class StringSeqHolder
+  implements Streamable
+{
+  /**
+   * The <code>String[]</code> (CORBA <code>string[]</code>) value,
+   * held by this StringSeqHolder.
+   */
+  public String[] value;
+
+  /**
+   * The type code for this holder. Each holder has a different instance.
+   */
+  private final ArrayTypeCode typecode =
+    new ArrayTypeCode(TCKind.tk_char);
+
+  /**
+   * Constructs an instance of StringSeqHolder,
+   * initializing {@link #value} to <code>null</code>.
+   */
+  public StringSeqHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of StringSeqHolder,
+   * initializing {@link #value} to the given <code>String</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public StringSeqHolder(String[] initial_value)
+  {
+    value = initial_value;
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Fill in the {@link value } field by reading the required data
+   * from the given stream. This method first reads the array size
+   * (as CORBA <code>long</code>and then all strings.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = new String[ input.read_long() ];
+    for (int i = 0; i < value.length; i++)
+      {
+        value [ i ] = input.read_string();
+      }
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  public TypeCode _type()
+  {
+    return typecode;
+  }
+
+  /**
+   * Write the {@link value } field to the given stream.
+   * This method first writes the array size
+   * (as CORBA <code>long</code> and then all strings.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_long(value.length);
+
+    for (int i = 0; i < value.length; i++)
+      {
+        output.write_string(value [ i ]);
+      }
+  }
+}

Propchange: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringSeqHolder.java

------------------------------------------------------------------------------
    svn:executable = *

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringValueHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringValueHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringValueHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StringValueHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,193 @@
+/* StringValueHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.portable.BoxedValueHelper;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+import java.io.Serializable;
+
+/**
+ * Provides helper operations for the String value type, treating a
+ * String as a CORBA value type rather than as a primitive type. The OMG
+ * specification states this may be convenient in some specific
+ * cases. The typecode is different, but the reading/writing format in
+ * this implementation is the same as for the ordinary string. This is
+ * that Sun's IDL compiler (v1.4) would generate.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public class StringValueHelper
+  implements BoxedValueHelper
+{
+  /**
+   * The String value helper repository Id.
+   */
+  private static final String id = "IDL:omg.org/CORBA/StringValue:1.0";
+
+  /**
+   * The String typecode.
+   */
+  private static final TypeCode tString =
+    OrbRestricted.Singleton.create_string_tc(0);
+
+  /**
+   * Returns the String Value repository Id.
+   * @return "IDL:omg.org/CORBA/StringValue:1.0", always.
+   */
+  public String get_id()
+  {
+    return id;
+  }
+
+  /**
+   * Returns the String Value repository Id.
+   * @return "IDL:omg.org/CORBA/StringValue:1.0", always.
+   */
+  public static String id()
+  {
+    return id;
+  }
+
+  /**
+   * Read the string value from the input stream.
+   *
+   * @param istream a stream to read from.
+   *
+   * @return a string (delegates to read_string()).
+   */
+  public Serializable read_value(InputStream istream)
+  {
+    return istream.read_string();
+  }
+
+  /**
+   * Write the given string value into the output stream.
+   *
+   * @param ostream a stream to write into.
+   * @param a_string a string to write.
+   */
+  public void write_value(OutputStream ostream, Serializable a_string)
+  {
+    try
+      {
+        ostream.write_string((String) a_string);
+      }
+    catch (ClassCastException ex)
+      {
+        MARSHAL m = new MARSHAL("String expected");
+        m.minor = Minor.ClassCast;
+        throw m;
+      }
+  }
+
+  /**
+   * Extract the string from the given Any. The operation
+   * requires Any to hold a String value and not a String.
+   *
+   * @param an_any an Any to extract from.
+   *
+   * @return the extracted string.
+   */
+  public static String extract(Any an_any)
+  {
+    if (an_any.type().equal(type()))
+      {
+        an_any.type(tString);
+        return an_any.extract_string();
+      }
+    else
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("String value type expected");
+        bad.minor = Minor.Any;
+        throw bad;
+      }
+  }
+
+  /**
+   * Insert the string into the given Any. After the operation,
+   * the Any will have a String Value typecode and not a
+   * String typecode.
+   *
+   * @param an_any an Any to insert into.
+   *
+   * @param that a string to insert.
+   */
+  public static void insert(Any an_any, String that)
+  {
+    an_any.insert_string(that);
+    an_any.type(type());
+  }
+
+  /**
+   * Reads a string as a value type.
+   *
+   * @param in a stream to read value from.
+   */
+  public static String read(InputStream in)
+  {
+    return in.read_string();
+  }
+
+  /**
+   * Create and return the value box typecode, named "StringValue", with the
+   * content typecode being unbounded string.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    return orb.create_value_box_tc(id(), "StringValue", tString);
+  }
+
+  /**
+   * Writes a string as a value type.
+   *
+   * @param out a stream to write value into.
+   *
+   * @param a_string a string to write.
+   */
+  public static void write(OutputStream out, String a_string)
+  {
+    out.write_string(a_string);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StructMember.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StructMember.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StructMember.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StructMember.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,94 @@
+/* StructMember.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * The component, describing the member of CORBA IDL <code>struct</code>.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class StructMember
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use 1.4 version serialVersionUID for interoperability.
+   */
+  private static final long serialVersionUID = 2762280796480753206L;
+
+  /**
+   * The IDL type of the structure member.
+   */
+  public IDLType type_def;
+
+  /**
+   * The name of the structure member.
+   */
+  public String name;
+
+  /**
+   * The typecode of the structure member.
+   */
+  public TypeCode type;
+  
+  /**
+   * Creates a structure member with all fields
+   * left with the default value <code>null</code>.
+   */
+  public StructMember()
+  {
+  }
+  
+  /**
+   * Creates a structure member.
+   * 
+   * @param a_name member name.
+   * @param a_type member type code.
+   * @param a_type_def member IDL type definition.
+   */
+  public StructMember(String a_name, TypeCode a_type, IDLType a_type_def)
+  {
+    name = a_name;
+    type = a_type;
+    type_def = a_type_def;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StructMemberHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StructMemberHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StructMemberHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/StructMemberHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,180 @@
+/* StructMemberHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+import gnu.CORBA.TypeCodeHelper;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Defines a helper operations for StructMember.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class StructMemberHelper
+{
+  /**
+   * The cached typecode value, computed once.
+   */
+  private static TypeCode typeCode;
+
+  /**
+   * This flag is used when creating typecodes for the recursive structures.
+   */
+  private static boolean active;
+
+  /**
+   * Insert the structure member into the given Any.
+   */
+  public static void insert(Any a, StructMember that)
+  {
+    OutputStream out = a.create_output_stream();
+    a.type(type());
+    write(out, that);
+    a.read_value(out.create_input_stream(), type());
+  }
+
+  /**
+   * Extract the structure member from the given Any.
+   */
+  public static StructMember extract(Any a)
+  {
+    return read(a.create_input_stream());
+  }
+
+  /**
+   * Get a typecode for the StructMember.
+   */
+  public static synchronized TypeCode type()
+  {
+    if (typeCode == null)
+      {
+        ORB orb = OrbRestricted.Singleton;
+
+        synchronized (TypeCode.class)
+          {
+            if (typeCode == null)
+              {
+                if (active)
+                  {
+                    return orb.create_recursive_tc(id());
+                  }
+                active = true;
+
+                StructMember[] members = new StructMember[ 3 ];
+                TypeCode member = null;
+
+                member = orb.create_string_tc(0);
+                member =
+                  orb.create_alias_tc(IdentifierHelper.id(), "Identifier",
+                                      member
+                                     );
+                members [ 0 ] = new StructMember("name", member, null);
+
+                member = orb.get_primitive_tc(TCKind.tk_TypeCode);
+
+                members [ 1 ] = new StructMember("type", member, null);
+                members [ 2 ] =
+                  new StructMember("type_def", IDLTypeHelper.type(), null);
+                typeCode =
+                  orb.create_struct_tc(StructMemberHelper.id(), "StructMember",
+                                       members
+                                      );
+                active = false;
+              }
+          }
+      }
+    return typeCode;
+  }
+
+  /**
+   * Return the StructMember repository id.
+   *
+   * @return "IDL:omg.org/CORBA/StructMember:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CORBA/StructMember:1.0";
+  }
+
+  /**
+   * Read the StructMember from the input stream.
+   */
+  public static StructMember read(InputStream istream)
+  {
+    try
+      {
+        StructMember value = new StructMember();
+        value.name = istream.read_string();
+        value.type = TypeCodeHelper.read(istream);
+        value.type_def = IDLTypeHelper.read(istream);
+        return value;
+      }
+    catch (UserException ex)
+      {
+        MARSHAL m = new MARSHAL();
+        m.minor = Minor.UserException;
+        m.initCause(ex);
+        throw m;
+      }
+  }
+
+  /**
+   * Write the StructMember to the input stream.
+   */
+  public static void write(OutputStream ostream, StructMember value)
+  {
+    try
+      {
+        ostream.write_string(value.name);
+        TypeCodeHelper.write(ostream, value.type);
+        IDLTypeHelper.write(ostream, value.type_def);
+      }
+    catch (UserException ex)
+      {
+        MARSHAL m = new MARSHAL();
+        m.minor = Minor.UserException;
+        m.initCause(ex);
+        throw m;
+      }
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SystemException.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SystemException.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SystemException.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/SystemException.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,95 @@
+/* SystemException.java --
+ Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+ This file is part of GNU Classpath.
+
+ GNU Classpath is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ GNU Classpath 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 for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GNU Classpath; see the file COPYING.  If not, write to the
+ Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ 02110-1301 USA.
+
+ Linking this library statically or dynamically with other modules is
+ making a combined work based on this library.  Thus, the terms and
+ conditions of the GNU General Public License cover the whole
+ combination.
+
+ As a special exception, the copyright holders of this library give you
+ permission to link this library with independent modules to produce an
+ executable, regardless of the license terms of these independent
+ modules, and to copy and distribute the resulting executable under
+ terms of your choice, provided that you also meet, for each linked
+ independent module, the terms and conditions of the license of that
+ module.  An independent module is a module which is not derived from
+ or based on this library.  If you modify this library, you may extend
+ this exception to your version of the library, but you are not
+ obligated to do so.  If you do not wish to do so, delete this
+ exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+/**
+ * The root class for all CORBA standard exceptions.
+ * 
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class SystemException
+  extends RuntimeException
+  implements Serializable
+{
+  /**
+   * Use serialVersionUID for interoperability. Using the version 1.4 UID.
+   */
+  private static final long serialVersionUID = -8486391734674855519L;
+
+  /**
+   * The status of the operation that have thrown this exception.
+   */
+  public CompletionStatus completed;
+
+  /**
+   * <p>
+   * Contains more details about the exception. The lower 12 bits contain a
+   * code, defining the reason why exception has been thrown. The higher 20 bits
+   * hold "Vendor Minor Codeset ID" (VMCID).
+   * </p>
+   * <p>
+   * The Classpath specifice minor exception codes are documented in the headers
+   * of the corresponding exceptions (for instance, {@link MARSHAL}).
+   * </p>
+   * 
+   * The VMCID 0 and 0xfffff are reserved for experimental use. 
+   * 
+   * @see OMGVMCID
+   */
+  public int minor;
+
+  /**
+   * Constructs an instance of the CORBA standard exception.
+   * 
+   * @param a_reason a string, explaining the reason why the exceptions has been
+   * thrown.
+   * @param a_minor an additional error code (known as the "minor")
+   * @param a_completed the task completion status.
+   */
+  protected SystemException(String a_reason, int a_minor,
+                            CompletionStatus a_completed)
+  {
+    super(a_reason + " Minor: " + Integer.toHexString(a_minor) + " ("
+      + (a_minor & 0xFFF) + "). Completed: "+a_completed);
+    minor = a_minor;
+    completed = a_completed;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TCKind.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TCKind.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TCKind.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TCKind.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,504 @@
+/* TCKind.java -- java to IDL mapping constants.
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+
+/**
+ * The basic constants, used in java to IDL mapping.
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public class TCKind
+{
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>null</code>.
+   */
+  public static final int _tk_null = 0;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>void</code>.
+   */
+  public static final int _tk_void = 1;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>short</code>.
+   */
+  public static final int _tk_short = 2;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>long</code>.
+   */
+  public static final int _tk_long = 3;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>ushort</code>.
+   */
+  public static final int _tk_ushort = 4;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>ulong</code>.
+   */
+  public static final int _tk_ulong = 5;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>float</code>.
+   */
+  public static final int _tk_float = 6;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>double</code>.
+   */
+  public static final int _tk_double = 7;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>boolean</code>.
+   */
+  public static final int _tk_boolean = 8;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>char</code>.
+   */
+  public static final int _tk_char = 9;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>octet</code>.
+   */
+  public static final int _tk_octet = 10;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>any</code>.
+   */
+  public static final int _tk_any = 11;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>TypeCode</code>.
+   */
+  public static final int _tk_TypeCode = 12;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>Principal</code>.
+   */
+  public static final int _tk_Principal = 13;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>objref</code>.
+   */
+  public static final int _tk_objref = 14;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>struct</code>.
+   */
+  public static final int _tk_struct = 15;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>union</code>.
+   */
+  public static final int _tk_union = 16;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>enum</code>.
+   */
+  public static final int _tk_enum = 17;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>string</code>.
+   */
+  public static final int _tk_string = 18;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>sequence</code>.
+   */
+  public static final int _tk_sequence = 19;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>array</code>.
+   */
+  public static final int _tk_array = 20;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>alias</code>.
+   */
+  public static final int _tk_alias = 21;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>except</code>.
+   */
+  public static final int _tk_except = 22;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>longlong</code>.
+   */
+  public static final int _tk_longlong = 23;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>ulonglong</code>.
+   */
+  public static final int _tk_ulonglong = 24;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>longdouble</code>.
+   */
+  public static final int _tk_longdouble = 25;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>wchar</code>.
+   */
+  public static final int _tk_wchar = 26;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>wstring</code>.
+   */
+  public static final int _tk_wstring = 27;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>fixed</code>.
+   */
+  public static final int _tk_fixed = 28;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>value</code>.
+   */
+  public static final int _tk_value = 29;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>value_box</code>.
+   */
+  public static final int _tk_value_box = 30;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>native</code>.
+   */
+  public static final int _tk_native = 31;
+
+  /**
+   * The integer constant, indicating IDL data type
+   * <code>abstract_interface</code>.
+   */
+  public static final int _tk_abstract_interface = 32;
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>null</code>
+   */
+  public static final TCKind tk_null = new TCKind(_tk_null);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>void</code>
+   */
+  public static final TCKind tk_void = new TCKind(_tk_void);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>short</code>
+   */
+  public static final TCKind tk_short = new TCKind(_tk_short);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>long</code>
+   */
+  public static final TCKind tk_long = new TCKind(_tk_long);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>ushort</code>
+   */
+  public static final TCKind tk_ushort = new TCKind(_tk_ushort);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>ulong</code>
+   */
+  public static final TCKind tk_ulong = new TCKind(_tk_ulong);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>float</code>
+   */
+  public static final TCKind tk_float = new TCKind(_tk_float);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>double</code>
+   */
+  public static final TCKind tk_double = new TCKind(_tk_double);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>boolean</code>
+   */
+  public static final TCKind tk_boolean = new TCKind(_tk_boolean);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>char</code>
+   */
+  public static final TCKind tk_char = new TCKind(_tk_char);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>octet</code>
+   */
+  public static final TCKind tk_octet = new TCKind(_tk_octet);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>any</code>
+   */
+  public static final TCKind tk_any = new TCKind(_tk_any);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>TypeCode</code>
+   */
+  public static final TCKind tk_TypeCode = new TCKind(_tk_TypeCode);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>Principal</code>
+   */
+  public static final TCKind tk_Principal = new TCKind(_tk_Principal);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>objref</code>
+   */
+  public static final TCKind tk_objref = new TCKind(_tk_objref);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>struct</code>
+   */
+  public static final TCKind tk_struct = new TCKind(_tk_struct);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>union</code>
+   */
+  public static final TCKind tk_union = new TCKind(_tk_union);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>enum</code>
+   */
+  public static final TCKind tk_enum = new TCKind(_tk_enum);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>string</code>
+   */
+  public static final TCKind tk_string = new TCKind(_tk_string);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>sequence</code>
+   */
+  public static final TCKind tk_sequence = new TCKind(_tk_sequence);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>array</code>
+   */
+  public static final TCKind tk_array = new TCKind(_tk_array);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>alias</code>
+   */
+  public static final TCKind tk_alias = new TCKind(_tk_alias);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>except</code>
+   */
+  public static final TCKind tk_except = new TCKind(_tk_except);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>longlong</code>
+   */
+  public static final TCKind tk_longlong = new TCKind(_tk_longlong);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>ulonglong</code>
+   */
+  public static final TCKind tk_ulonglong = new TCKind(_tk_ulonglong);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>longdouble</code>
+   */
+  public static final TCKind tk_longdouble = new TCKind(_tk_longdouble);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>wchar</code>
+   */
+  public static final TCKind tk_wchar = new TCKind(_tk_wchar);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>wstring</code>
+   */
+  public static final TCKind tk_wstring = new TCKind(_tk_wstring);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>fixed</code>
+   */
+  public static final TCKind tk_fixed = new TCKind(_tk_fixed);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>value</code>
+   */
+  public static final TCKind tk_value = new TCKind(_tk_value);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>value_box</code>
+   */
+  public static final TCKind tk_value_box = new TCKind(_tk_value_box);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>native</code>
+   */
+  public static final TCKind tk_native = new TCKind(_tk_native);
+
+  /**
+   * The TCKind constant, indicating IDL data type
+   * <code>abstract_interface</code>
+   */
+  public static final TCKind tk_abstract_interface =
+    new TCKind(_tk_abstract_interface);
+
+  /**
+   * The kind value for this instance.
+   */
+  private final int _value;
+
+  /**
+   * The array of all tk_... instances, sorted by the kind number.
+   * 
+   * As long as the kind numbers make the continuos sequence, starting from 0,
+   * the members can be found just by direct indexing. 
+   */
+  private static final TCKind[] tk =
+    new TCKind[]
+    {
+      tk_null, tk_void, tk_short, tk_long, tk_ushort, tk_ulong, tk_float,
+      tk_double, tk_boolean, tk_char, tk_octet, tk_any, tk_TypeCode,
+      tk_Principal, tk_objref, tk_struct, tk_union, tk_enum, tk_string,
+      tk_sequence, tk_array, tk_alias, tk_except, tk_longlong, tk_ulonglong,
+      tk_longdouble, tk_wchar, tk_wstring, tk_fixed, tk_value, tk_value_box,
+      tk_native, tk_abstract_interface
+    };
+
+  /**
+   * Creates a new TCKind instance with the given integer constant value.
+   * @deprecated it is recommended to use {@link #from_int(int)} that
+   * reuses existing TCKind object instead of allocating the new instance.
+   * @param kind one of the <code>_tk_..</code> constants.
+   */
+  protected TCKind(int kind)
+  {
+    _value = kind;
+  }
+
+  /**
+   * Returns the integer value, corresponding this instance of TCKind.
+   * @return the <code>_tk_..</code> value, matching this instance.
+   */
+  public int value()
+  {
+    return _value;
+  }
+
+  /**
+   * Return a TCKind object, matching the given integer code.
+   * @param _tk_nnn the TCKind code, one of <code>_tk_..</code> constants.
+   * @return the matching instance of TCKind, on of tk_.. constants.
+   * @throws BAD_PARAM if the given integer constant is not one of the
+   * valid <code>_tk_..</code> constants.
+   */
+  public static TCKind from_int(int _tk_nnn)
+  {
+    try {
+      return tk[_tk_nnn];
+    }
+    catch (ArrayIndexOutOfBoundsException aex) {
+      throw new BAD_PARAM("Invalid _tk_ code "+_tk_nnn);
+    }
+  }
+  
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TIMEOUT.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TIMEOUT.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TIMEOUT.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TIMEOUT.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,98 @@
+/* TIMEOUT.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+/**
+ * Raised when no delivery has been made during the specified timeout duration.
+ *
+ * @since 1.5
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class TIMEOUT
+  extends SystemException
+  implements Serializable
+{
+  /**
+   * Use serialVersionUID (v1.5) for interoperability.
+   */
+  private static final long serialVersionUID = 4674850648191359518L;
+
+  /**
+   * Creates TIMEOUT with the default minor code of 0,
+   * completion state COMPLETED_NO and the given explaining message.
+   * @param message the explaining message.
+   */
+  public TIMEOUT(String message)
+  {
+    super(message, 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /**
+   * Creates TIMEOUT with the default minor code of 0 and a
+   * completion state COMPLETED_NO.
+   */
+  public TIMEOUT()
+  {
+    super("", 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /** Creates a TIMEOUT exception with the specified minor
+   * code and completion status.
+   * @param minor additional error code.
+   * @param completed the method completion status.
+   */
+  public TIMEOUT(int minor, CompletionStatus completed)
+  {
+    super("", minor, completed);
+  }
+
+  /**
+   * Created TIMEOUT exception, providing full information.
+   * @param reason explaining message.
+   * @param minor additional error code (the "minor").
+   * @param completed the method completion status.
+   */
+  public TIMEOUT(String reason, int minor, CompletionStatus completed)
+  {
+    super(reason, minor, completed);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_MODE.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_MODE.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_MODE.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_MODE.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,99 @@
+/* TRANSACTION_MODE.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+/**
+ * Raised when the TransactionPolicy in the IOR is not the same as the current
+ * transaction mode.
+ *
+ * @since 1.5
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class TRANSACTION_MODE
+  extends SystemException
+  implements Serializable
+{
+  /**
+   * Use serialVersionUID (v1.5) for interoperability.
+   */
+  private static final long serialVersionUID = 681236728492128745L;
+
+  /**
+   * Creates TRANSACTION_MODE with the default minor code of 0,
+   * completion state COMPLETED_NO and the given explaining message.
+   * @param message the explaining message.
+   */
+  public TRANSACTION_MODE(String message)
+  {
+    super(message, 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /**
+   * Creates TRANSACTION_MODE with the default minor code of 0 and a
+   * completion state COMPLETED_NO.
+   */
+  public TRANSACTION_MODE()
+  {
+    super("", 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /** Creates a TRANSACTION_MODE exception with the specified minor
+   * code and completion status.
+   * @param minor additional error code.
+   * @param completed the method completion status.
+   */
+  public TRANSACTION_MODE(int minor, CompletionStatus completed)
+  {
+    super("", minor, completed);
+  }
+
+  /**
+   * Created TRANSACTION_MODE exception, providing full information.
+   * @param reason explaining message.
+   * @param minor additional error code (the "minor").
+   * @param completed the method completion status.
+   */
+  public TRANSACTION_MODE(String reason, int minor, CompletionStatus completed)
+  {
+    super(reason, minor, completed);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_REQUIRED.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_REQUIRED.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_REQUIRED.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_REQUIRED.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,96 @@
+/* TRANSACTION_REQUIRED.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+/**
+ * Means that request carried a null transaction context, but an 
+ * active transaction is required.
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class TRANSACTION_REQUIRED
+  extends SystemException
+  implements Serializable
+{
+  /** 
+   * Use serialVersionUID for interoperability. 
+   */
+  private static final long serialVersionUID = -1900254548742148576L;
+
+  /**
+   * Creates a TRANSACTION_REQUIRED with the default minor code of 0,
+   * completion state COMPLETED_NO and the given explaining message.
+   * @param message the explaining message.
+   */
+  public TRANSACTION_REQUIRED(String message)
+  {
+    super(message, 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /**
+   * Creates TRANSACTION_REQUIRED with the default minor code of 0 and a
+   * completion state COMPLETED_NO.
+   */
+  public TRANSACTION_REQUIRED()
+  {
+    super("", 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /** Creates a TRANSACTION_REQUIRED exception with the specified minor
+   * code and completion status.
+   * @param minor additional error code.
+   * @param completed the method completion status.
+   */
+  public TRANSACTION_REQUIRED(int minor, CompletionStatus completed)
+  {
+    super("", minor, completed);
+  }
+
+  /**
+   * Created TRANSACTION_REQUIRED exception, providing full information.
+   * @param reason explaining message.
+   * @param minor additional error code (the "minor").
+   * @param completed the method completion status.
+   */
+  public TRANSACTION_REQUIRED(String reason, int minor, CompletionStatus completed)
+  {
+    super(reason, minor, completed);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_ROLLEDBACK.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_ROLLEDBACK.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_ROLLEDBACK.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_ROLLEDBACK.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* TRANSACTION_ROLLEDBACK.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+/**
+ * Means that transaction associated with the request has already
+ * been rolled back or marked to roll back.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class TRANSACTION_ROLLEDBACK
+  extends SystemException
+  implements Serializable
+{
+  /** 
+   * Use serialVersionUID for interoperability.
+   */
+  private static final long serialVersionUID = -343903462439281571L;
+
+  /**
+   * Creates a TRANSACTION_ROLLEDBACK with the default minor code of 0,
+   * completion state COMPLETED_NO and the given explaining message.
+   * @param message the explaining message.
+   */
+  public TRANSACTION_ROLLEDBACK(String message)
+  {
+    super(message, 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /**
+   * Creates TRANSACTION_ROLLEDBACK with the default minor code of 0 and a
+   * completion state COMPLETED_NO.
+   */
+  public TRANSACTION_ROLLEDBACK()
+  {
+    super("", 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /** Creates a TRANSACTION_ROLLEDBACK exception with the specified minor
+   * code and completion status.
+   * @param minor additional error code.
+   * @param completed the method completion status.
+   */
+  public TRANSACTION_ROLLEDBACK(int minor, CompletionStatus completed)
+  {
+    super("", minor, completed);
+  }
+
+  /**
+   * Created TRANSACTION_ROLLEDBACK exception, providing full information.
+   * @param reason explaining message.
+   * @param minor additional error code (the "minor").
+   * @param completed the method completion status.
+   */
+  public TRANSACTION_ROLLEDBACK(String reason, int minor, CompletionStatus completed)
+  {
+    super(reason, minor, completed);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_UNAVAILABLE.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_UNAVAILABLE.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_UNAVAILABLE.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSACTION_UNAVAILABLE.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,99 @@
+/* TRANSACTION_UNAVAILABLE.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+/**
+ * Raised in response to the abnormal termination of the transaction
+ * service.
+ *
+ * @since 1.5
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class TRANSACTION_UNAVAILABLE
+  extends SystemException
+  implements Serializable
+{
+  /**
+   * Use serialVersionUID (v1.5) for interoperability.
+   */
+  private static final long serialVersionUID = 6340246200933309385L;
+
+  /**
+   * Creates TRANSACTION_UNAVAILABLE with the default minor code of 0,
+   * completion state COMPLETED_NO and the given explaining message.
+   * @param message the explaining message.
+   */
+  public TRANSACTION_UNAVAILABLE(String message)
+  {
+    super(message, 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /**
+   * Creates TRANSACTION_UNAVAILABLE with the default minor code of 0 and a
+   * completion state COMPLETED_NO.
+   */
+  public TRANSACTION_UNAVAILABLE()
+  {
+    super("", 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /** Creates a TRANSACTION_UNAVAILABLE exception with the specified minor
+   * code and completion status.
+   * @param minor additional error code.
+   * @param completed the method completion status.
+   */
+  public TRANSACTION_UNAVAILABLE(int minor, CompletionStatus completed)
+  {
+    super("", minor, completed);
+  }
+
+  /**
+   * Created TRANSACTION_UNAVAILABLE exception, providing full information.
+   * @param reason explaining message.
+   * @param minor additional error code (the "minor").
+   * @param completed the method completion status.
+   */
+  public TRANSACTION_UNAVAILABLE(String reason, int minor, CompletionStatus completed)
+  {
+    super(reason, minor, completed);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSIENT.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSIENT.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSIENT.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TRANSIENT.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* TRANSIENT.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+/**
+ * Means that the ORB cannot <i>reach</i> the object. It is not an
+ * indication that this object does not exist.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class TRANSIENT
+  extends SystemException
+  implements Serializable
+{
+  /**
+   * Creates a TRANSIENT with the default minor code of 0,
+   * completion state COMPLETED_NO and the given explaining message.
+   * @param message the explaining message.
+   */
+  public TRANSIENT(String message)
+  {
+    super(message, 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 8168539547719791425L;
+
+  /**
+   * Creates TRANSIENT with the default minor code of 0 and a
+   * completion state COMPLETED_NO.
+   */
+  public TRANSIENT()
+  {
+    super("", 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /** Creates a TRANSIENT exception with the specified minor
+   * code and completion status.
+   * @param minor additional error code.
+   * @param completed the method completion status.
+   */
+  public TRANSIENT(int minor, CompletionStatus completed)
+  {
+    super("", minor, completed);
+  }
+
+  /**
+   * Created TRANSIENT exception, providing full information.
+   * @param reason explaining message.
+   * @param minor additional error code (the "minor").
+   * @param completed the method completion status.
+   */
+  public TRANSIENT(String reason, int minor, CompletionStatus completed)
+  {
+    super(reason, minor, completed);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCode.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCode.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCode.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCode.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,271 @@
+/* TypeCode.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import org.omg.CORBA.TypeCodePackage.BadKind;
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * An information about a CORBA data type.
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class TypeCode
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use serialVersionUID for interoperability.
+   * Using the version 1.4 UID.
+   */
+  private static final long serialVersionUID = -6521025782489515676L;
+
+  /**
+   * For value types that support inheritance this method returns the
+   * of the ancestor type code.
+   *
+   * @return the ancestor TypeCode.
+   *
+   * @throws BadKind for all typecodes except the value type typecodes.
+   */
+  public abstract TypeCode concrete_base_type()
+                                       throws BadKind;
+
+  /**
+   * For sequences, arrays, aliases and value boxes, returns the IDL type for
+   * the members of the object.
+   * @return a TypeCode of the memebers of this type.
+   * @throws BadKind for types other than
+   * sequences, arrays, aliases and value boxes.
+   */
+  public abstract TypeCode content_type()
+                                 throws BadKind;
+
+  /**
+   * For unions, returs the index of the default member.
+   * @return the index of the default member, -1 if there is
+   * no default member.
+   * @throws BadKind if this type is not
+   * a union.
+   */
+  public abstract int default_index()
+                             throws BadKind;
+
+  /**
+   * Returs definition of member labels for untions
+   * @return a TypeCode, describing all non-default member labels.
+   * @throws BadKind if this type is not a
+   * union.
+   */
+  public abstract TypeCode discriminator_type()
+                                       throws BadKind;
+
+  /**
+   * Test two types for equality.
+   *
+   * @param other the other type to compere with
+   * @return true if the types are interchangeable.
+   */
+  public abstract boolean equal(TypeCode other);
+
+  /**
+   * Following the current 1.4 API specifcation, this should just throw
+   * NO_IMPLEMENT.
+   * @throws org.omg.CORBA.NO_IMPLEMENT, always.
+   */
+  public abstract boolean equivalent(TypeCode other);
+
+  /**
+   * For the fixed type, returns the number of digits.
+   * @return the number of digits for the fixed type
+   * @throws BadKind if this is not a fixed
+   * type.
+   */
+  public abstract short fixed_digits()
+                              throws BadKind;
+
+  /**
+   * Returns the scale for the fixed type. The returned value can be either
+   * positive (the number of digits to the right of the decimal point) or
+   * negative (adds zeros to the left of the decimal point).
+   * @return the scale.
+   * @throws BadKind if this is not a fixed
+   * type.
+   */
+  public abstract short fixed_scale()
+                             throws BadKind;
+
+  /**
+   * Returns a version of this instance without the optional memeber and
+   * member name fields.
+   * @return the truncated version.
+   */
+  public abstract TypeCode get_compact_typecode();
+
+  /**
+   * Returns the RepositoryId globally identifying the type, defined by
+   * this TypeCode.
+   * @return tje RepositoryId. In some cases, it may be an empty string.
+   * @throws BadKind if the type is other than
+   * reference, structure, union, enumeration, alias, exception, valuetype,
+   * boxed valuetype and also native and abstract interfaces.
+   */
+  public abstract String id()
+                     throws BadKind;
+
+  /**
+   * Return the kind of this type code object.
+   * @return one of the <code>TCKind.t_..</code> fields.
+   */
+  public abstract TCKind kind();
+
+  /**
+   * Returns the number of elements in the type. For arrays, this
+   * method returns the length of the array. For strings and sequences,
+   * it returns the bound of the type, zero indicating the unbounded
+   * type.
+   *
+   * @return length or bound
+   *
+   * @throws BadKind for types other than
+   * string, sequence and array.
+   */
+  public abstract int length()
+                      throws BadKind;
+
+  /**
+   * Returns the number of type memebers.
+   *
+   * @return the number of memebers
+   * @throws BadKind for types other than
+   * structure, union, enumeration or exception.
+   */
+  public abstract int member_count()
+                            throws BadKind;
+
+  /**
+   * Retrieves the label of the union member at the given index.
+   * For the default member, this label is the zero octet.
+   *
+   * @param index the index of the union memeber.
+   *
+   * @return the label
+   *
+   * @throws BadKind if this is not a union
+   * type.
+   * @throws org.omg.CORBA.TypeCodePackage.Bounds if the index is out of
+   * valid bounds.
+   */
+  public abstract Any member_label(int index)
+                            throws BadKind,
+                                   org.omg.CORBA.TypeCodePackage.Bounds;
+
+  /**
+   * Retrieves the simple name of the member identified by the given index.
+   *
+   * @param index the index of the memeber.
+   *
+   * @return the member name that in some cases can be an empty string.
+   *
+   * @throws BadKind for types other than
+   * structure, union or enumeration.
+   * @throws org.omg.CORBA.TypeCodePackage.Bounds if the index is out of
+   * valid bounds.
+   */
+  public abstract String member_name(int index)
+                              throws BadKind,
+                                     org.omg.CORBA.TypeCodePackage.Bounds;
+
+  /**
+   * Retrieves the member type of the member identified by the given index.
+   *
+   * @param index the index of the memeber.
+   *
+   * @return the member type.
+   *
+   * @throws BadKind for types other than
+   * structure, union, enumeration or exception.
+   * @throws org.omg.CORBA.TypeCodePackage.Bounds if the index is out of
+   * valid bounds.
+   */
+  public abstract TypeCode member_type(int index)
+                                throws BadKind,
+                                       org.omg.CORBA.TypeCodePackage.Bounds;
+
+  /**
+   * Returns the visibility scope of the member at the given index.
+   * This operation can only be invoked on non-boxed value types.
+   *
+   * @param index the index of the member
+   *
+   * @return either PRIVATE_MEMBER.value or PUBLIC_MEMBER.value
+   *
+   * @throws BadKind if this is not a non boxed
+   * value type.
+   *
+   * @throws org.omg.CORBA.TypeCodePackage.Bounds if the index is out of
+   * valid bounds.
+   */
+  public abstract short member_visibility(int index)
+                                   throws BadKind,
+                                          org.omg.CORBA.TypeCodePackage.Bounds;
+
+  /**
+   * Retrieves the simple name identifying this TypeCode object
+   * within its enclosing scope.
+   * @return the name, can be an empty string.
+   * @throws BadKind for typer other than
+   * reference, structure, union, enumeration, alias, exception,
+   * valuetype, boxed valuetype, native, and abstract interface
+   */
+  public abstract String name()
+                       throws BadKind;
+
+  /**
+   * Returns a constant indicating the modifier of the value type.
+   *
+   * @return one of the following constants:
+   * VM_NONE.value, VM_ABSTRACT.value, VM_CUSTOM.value, or
+   * VM_TRUNCATABLE.value,
+   *
+   * @throws BadKind for all types other than value type.
+   */
+  public abstract short type_modifier()
+                               throws BadKind;
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodeHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodeHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodeHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodeHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,123 @@
+/* TypeCodeHolder.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.PrimitiveTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A holder for CORBA <code>TypeCode</code> that is mapped into
+ * java <code>TypeCode</code>.
+ *
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class TypeCodeHolder
+  implements Streamable
+{
+  /**
+   * The default type code for this holder.
+   */
+  private static final TypeCode t_TypeCode =
+    new PrimitiveTypeCode(TCKind.tk_TypeCode);
+
+  /**
+   * The <code>TypeCode</code> (CORBA <code>TypeCode</code>) value,
+   * held by this TypeCodeHolder.
+   */
+  public TypeCode value;
+
+  /**
+   * Constructs an instance of TypeCodeHolder,
+   * initializing {@link #value} to <code>null</code>.
+   */
+  public TypeCodeHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of TypeCodeHolder,
+   * initializing {@link #value} to the given <code>TypeCode</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public TypeCodeHolder(TypeCode initial_value)
+  {
+    value = initial_value;
+  }
+
+  /**
+   * Fill in the {@link #value} field by reading the required data
+   * from the given stream. For <code>TypeCode</code>, the functionality
+   * is delegated to
+   * {@link org.omg.CORBA.portable.InputStream#read_TypeCode}.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = input.read_TypeCode();
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  public TypeCode _type()
+  {
+    return t_TypeCode;
+  }
+
+  /**
+   * Write the {@link #value} field to the given stream.
+   * For <code>TypeCode</code>, the functionality
+   * is delegated to
+   * {@link org.omg.CORBA.portable.OutputStream#write_TypeCode(TypeCode) }.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_TypeCode(value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/BadKind.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/BadKind.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/BadKind.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/BadKind.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,76 @@
+/* BadKind.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.TypeCodePackage;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * This exception is thrown when an inappropriate operation is invoked on
+ * a {@link org.omg.CORBA.TypeCode} object.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class BadKind
+  extends UserException
+  implements IDLEntity, Serializable
+{
+  /** 
+   * Use serialVersionUID for interoperability. 
+   */
+  private static final long serialVersionUID = 1030443154456771956L;
+  
+  /**
+   * Constructs a the exception.
+   */
+  public BadKind()
+  {
+  }
+
+  /**
+   * Constructs the exception, explaining the reason of throwing it.
+   * @param reason a string, explaining, why the exception has been thrown.
+   */
+  public BadKind(String reason)
+  {
+    super(reason);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/Bounds.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/Bounds.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/Bounds.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/Bounds.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,79 @@
+/* Bounds.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.TypeCodePackage;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * The {@link org.omg.CORBA.TypeCode#member_name(int) },
+ * {@link org.omg.CORBA.TypeCode#member_type(int) } and
+ * {@link org.omg.CORBA.TypeCode#member_label(int) } raise Bounds when 
+ * the parameter is larger than the index of the last member,
+ * constituting the type.
+ * 
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class Bounds
+  extends UserException
+  implements IDLEntity, Serializable
+{
+  /** 
+   * Use serialVersionUID for interoperability. 
+   */
+  private static final long serialVersionUID = -5418177951071152101L;
+
+  /**
+   * Constructs a the exception.
+   */
+  public Bounds()
+  {
+  }
+
+  /**
+   * Constructs the exception, explaining the reason of throwing it.
+   * @param reason a string, explaining, why the exception has been thrown.
+   */
+  public Bounds(String reason)
+  {
+    super(reason);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/package.html
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/package.html?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/package.html (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/TypeCodePackage/package.html Thu Nov  8 16:56:19 2007
@@ -0,0 +1,46 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html - describes classes in javax.sql package.
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath - org.omg.CORBA.TypeCodePackage</title></head>
+
+<body>
+<p>Provides a couple of exceptions, thrown by methods in the <code>TypeCode</code> class.</p>
+
+</body>
+</html>

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongLongSeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongLongSeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongLongSeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongLongSeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,142 @@
+/* ULongLongSeqHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.TypeCodePackage.BadKind;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Provides static helper methods for working with
+ * CORBA sequence of <code>long</code>
+ * (<code>ULongLongSeq</code>).
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class ULongLongSeqHelper
+{
+  /**
+   * Extract the <code>long[]</code> from the
+   * given {@link Any}. This implementation expects the
+   * {@link Any} to hold the instance of {@link ULongLongSeqHolder}
+   * that is returned by {@link Any#extract_Streamable() }.
+   *
+   * @param a an Any to extract the array from.
+   *
+   * @return the extracted array.
+   *
+   * @throws ClassCastException if the Any contains something other than the
+   * the {@link ULongLongSeqHolder}.
+   */
+  public static long[] extract(Any a)
+  {
+    ULongLongSeqHolder h = (ULongLongSeqHolder) a.extract_Streamable();
+    return h.value;
+  }
+
+  /**
+   * Returns the agreed Id, delegating functionality to
+   * the {@link #type()}.id().
+   */
+  public static String id()
+  {
+    try
+      {
+        return type().id();
+      }
+    catch (BadKind ex)
+      {
+        // Should never happen under correct work.
+        throw new Error("Please report this bug.", ex);
+      }
+  }
+
+  /**
+  * Insert into the given <code>long[]</code> into the
+  * given {@link Any}. This implementation first creates
+  * a {@link ULongLongSeqHolder} and then calls
+  * {@link Any#insert_Streamable(Streamable)}.
+  *
+  * @param into the target Any.
+  * @param that the array to insert.
+  */
+  public static void insert(Any into, long[] that)
+  {
+    ULongLongSeqHolder holder = new ULongLongSeqHolder(that);
+    into.insert_Streamable(holder);
+  }
+
+  /**
+   * Reads the <code>long[]</code> from the CORBA input stream.
+   *
+   * @param input the CORBA (not java.io) stream to read from.
+   * @return the value from the stream.
+   */
+  public static long[] read(InputStream input)
+  {
+    long[] value = new long[ input.read_long() ];
+    input.read_ulonglong_array(value, 0, value.length);
+    return value;
+  }
+
+  /**
+   * Creates and returns a new instance of the TypeCode,
+   * corresponding the CORBA <code>ULongLongSeq</code>.
+   * The length of the sequence is left with the initial
+   * value 0.
+   */
+  public static TypeCode type()
+  {
+    return new ArrayTypeCode(TCKind.tk_ulong);
+  }
+
+  /**
+   * Writes the <code>long[]</code> into the given stream.
+   *
+   * @param output the CORBA (not java.io) output stream to write.
+   * @param value the value that must be written.
+   */
+  public static void write(OutputStream output, long[] value)
+  {
+    output.write_long(value.length);
+    output.write_ulonglong_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongLongSeqHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongLongSeqHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongLongSeqHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongLongSeqHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,126 @@
+/* ULongLongSeqHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A sequence holder for CORBA <code>ULongLongSeq</code> that is mapped into
+ * java <code>long[]</code>.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class ULongLongSeqHolder
+  implements Streamable
+{
+  /**
+   * The <code>long[]</code> (CORBA <code>ULongLongSeq</code>) value,
+   * held by this ULongLongSeqHolder.
+   */
+  public long[] value;
+
+  /**
+   * The type code for this holder. Each holder has a different instance.
+   */
+  private final ArrayTypeCode typecode =
+    new ArrayTypeCode(TCKind.tk_ulonglong);
+
+  /**
+   * Constructs an instance of ULongLongSeqHolder,
+   * initializing {@link #value} to <code>null</code>.
+   */
+  public ULongLongSeqHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of ULongLongSeqHolder,
+   * initializing {@link #value} to the given <code>long[]</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public ULongLongSeqHolder(long[] initial_value)
+  {
+    value = initial_value;
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Fill in the {@link value } field by reading the required data
+   * from the given stream. This method first reads the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.InputStream#read_ulonglong_array }.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = new long[ input.read_long() ];
+    input.read_ulonglong_array(value, 0, value.length);
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  public TypeCode _type()
+  {
+    return typecode;
+  }
+
+  /**
+   * Write the {@link value } field to the given stream.
+   * This method first writes the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.OutputStream#write_ulonglong_array }.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_long(value.length);
+    output.write_ulonglong_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongSeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongSeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongSeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongSeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,142 @@
+/* ULongSeqHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.TypeCodePackage.BadKind;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Provides static helper methods for working with
+ * CORBA sequence of <code>int</code>
+ * (<code>ULongSeq</code>).
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class ULongSeqHelper
+{
+  /**
+   * Extract the <code>int[]</code> from the
+   * given {@link Any}. This implementation expects the
+   * {@link Any} to hold the instance of {@link ULongSeqHolder}
+   * that is returned by {@link Any#extract_Streamable() }.
+   *
+   * @param a an Any to extract the array from.
+   *
+   * @return the extracted array.
+   *
+   * @throws ClassCastException if the Any contains something other than the
+   * the {@link ULongSeqHolder}.
+   */
+  public static int[] extract(Any a)
+  {
+    ULongSeqHolder h = (ULongSeqHolder) a.extract_Streamable();
+    return h.value;
+  }
+
+  /**
+   * Returns the agreed Id, delegating functionality to
+   * the {@link #type()}.id().
+   */
+  public static String id()
+  {
+    try
+      {
+        return type().id();
+      }
+    catch (BadKind ex)
+      {
+        // Should never happen under correct work.
+        throw new Error("Please report this bug.", ex);
+      }
+  }
+
+  /**
+  * Insert into the given <code>int[]</code> into the
+  * given {@link Any}. This implementation first creates
+  * a {@link ULongSeqHolder} and then calls
+  * {@link Any#insert_Streamable(Streamable)}.
+  *
+  * @param into the target Any.
+  * @param that the array to insert.
+  */
+  public static void insert(Any into, int[] that)
+  {
+    ULongSeqHolder holder = new ULongSeqHolder(that);
+    into.insert_Streamable(holder);
+  }
+
+  /**
+   * Reads the <code>int[]</code> from the CORBA input stream.
+   *
+   * @param input the CORBA (not java.io) stream to read from.
+   * @return the value from the stream.
+   */
+  public static int[] read(InputStream input)
+  {
+    int[] value = new int[ input.read_long() ];
+    input.read_ulong_array(value, 0, value.length);
+    return value;
+  }
+
+  /**
+   * Creates and returns a new instance of the TypeCode,
+   * corresponding the CORBA <code>ULongSeq</code>.
+   * The length of the sequence is left with the initial
+   * value 0.
+   */
+  public static TypeCode type()
+  {
+    return new ArrayTypeCode(TCKind.tk_long);
+  }
+
+  /**
+   * Writes the <code>int[]</code> into the given stream.
+   *
+   * @param output the CORBA (not java.io) output stream to write.
+   * @param value the value that must be written.
+   */
+  public static void write(OutputStream output, int[] value)
+  {
+    output.write_long(value.length);
+    output.write_ulong_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongSeqHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongSeqHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongSeqHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ULongSeqHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,126 @@
+/* ULongSeqHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A sequence holder for CORBA <code>ULongSeq</code> that is mapped into
+ * java <code>int[]</code>.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class ULongSeqHolder
+  implements Streamable
+{
+  /**
+   * The <code>int[]</code> (CORBA <code>ULongSeq</code>) value,
+   * held by this ULongSeqHolder.
+   */
+  public int[] value;
+
+  /**
+   * The type code for this holder. Each holder has a different instance.
+   */
+  private final ArrayTypeCode typecode =
+    new ArrayTypeCode(TCKind.tk_ulong);
+
+  /**
+   * Constructs an instance of ULongSeqHolder,
+   * initializing {@link #value} to <code>null</code>.
+   */
+  public ULongSeqHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of ULongSeqHolder,
+   * initializing {@link #value} to the given <code>int[]</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public ULongSeqHolder(int[] initial_value)
+  {
+    value = initial_value;
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Fill in the {@link value } field by reading the required data
+   * from the given stream. This method first reads the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.InputStream#read_ulong_array }.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = new int[ input.read_long() ];
+    input.read_ulong_array(value, 0, value.length);
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  public TypeCode _type()
+  {
+    return typecode;
+  }
+
+  /**
+   * Write the {@link value } field to the given stream.
+   * This method first writes the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.OutputStream#write_ulong_array }.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_long(value.length);
+    output.write_ulong_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNKNOWN.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNKNOWN.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNKNOWN.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNKNOWN.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,95 @@
+/* UNKNOWN.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+/**
+ * Means that the operation implementation has thrown a non-CORBA exception.
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class UNKNOWN
+  extends SystemException
+  implements Serializable
+{
+  /**
+   * Use serialVersionUID for interoperability.
+   */
+  private static final long serialVersionUID = -3556426185741898205L;
+
+  /**
+   * Creates a UNKNOWN with the default minor code of 0,
+   * completion state COMPLETED_NO and the given explaining message.
+   * @param message the explaining message.
+   */
+  public UNKNOWN(String message)
+  {
+    super(message, 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /**
+   * Creates UNKNOWN with the default minor code of 0 and a
+   * completion state COMPLETED_NO.
+   */
+  public UNKNOWN()
+  {
+    super("", 0, CompletionStatus.COMPLETED_NO);
+  }
+
+  /** Creates a UNKNOWN exception with the specified minor
+   * code and completion status.
+   * @param minor additional error code.
+   * @param completed the method completion status.
+   */
+  public UNKNOWN(int minor, CompletionStatus completed)
+  {
+    super("", minor, completed);
+  }
+
+  /**
+   * Created UNKNOWN exception, providing full information.
+   * @param reason explaining message.
+   * @param minor additional error code (the "minor").
+   * @param completed the method completion status.
+   */
+  public UNKNOWN(String reason, int minor, CompletionStatus completed)
+  {
+    super(reason, minor, completed);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNSUPPORTED_POLICY.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNSUPPORTED_POLICY.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNSUPPORTED_POLICY.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNSUPPORTED_POLICY.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,56 @@
+/* UNSUPPORTED_POLICY.java -- 
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+package org.omg.CORBA;
+
+/**
+ * Holds a single constant, specifying, that
+ * while the requested {@link Policy} is valid, it is not supported by 
+ * this ORB. One of the PolicyErrorCodes, others being 
+ * {@link UNSUPPORTED_POLICY_VALUE}, {@link BAD_POLICY},
+ * {@link BAD_POLICY_TYPE}, {@link BAD_POLICY_VALUE}.
+ * 
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface UNSUPPORTED_POLICY
+{
+  /**
+   * States that while the requested {@link Policy} is valid, 
+   * it is not supported by this ORB.
+   */
+  short value = 1;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNSUPPORTED_POLICY_VALUE.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNSUPPORTED_POLICY_VALUE.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNSUPPORTED_POLICY_VALUE.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UNSUPPORTED_POLICY_VALUE.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,56 @@
+/* UNSUPPORTED_POLICY_VALUE.java -- 
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+package org.omg.CORBA;
+
+/**
+ * Holds a single constant, specifying, that
+ * while the requested {@link Policy} value is valid, it is not 
+ * supported by this ORB. One of the PolicyErrorCodes, others being 
+ * {@link UNSUPPORTED_POLICY}, {@link BAD_POLICY}, {@link BAD_POLICY_TYPE} ,
+ * {@link BAD_POLICY_VALUE}.
+ * 
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface UNSUPPORTED_POLICY_VALUE
+{
+  /**
+   * States that while the requested {@link Policy} value is valid, 
+   * it is not supported by this ORB. 
+   */
+  short value = 4;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UShortSeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UShortSeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UShortSeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UShortSeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,142 @@
+/* UShortSeqHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.TypeCodePackage.BadKind;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Provides static helper methods for working with
+ * CORBA sequence of <code>short</code>
+ * (<code>UShortSeq</code>).
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class UShortSeqHelper
+{
+  /**
+   * Extract the <code>short[]</code> from the
+   * given {@link Any}. This implementation expects the
+   * {@link Any} to hold the instance of {@link UShortSeqHolder}
+   * that is returned by {@link Any#extract_Streamable() }.
+   *
+   * @param a an Any to extract the array from.
+   *
+   * @return the extracted array.
+   *
+   * @throws ClassCastException if the Any contains something other than the
+   * the {@link UShortSeqHolder}.
+   */
+  public static short[] extract(Any a)
+  {
+    UShortSeqHolder h = (UShortSeqHolder) a.extract_Streamable();
+    return h.value;
+  }
+
+  /**
+   * Returns the agreed Id, delegating functionality to
+   * the {@link #type()}.id().
+   */
+  public static String id()
+  {
+    try
+      {
+        return type().id();
+      }
+    catch (BadKind ex)
+      {
+        // Should never happen under correct work.
+        throw new Error("Please report this bug.", ex);
+      }
+  }
+
+  /**
+  * Insert into the given <code>short[]</code> into the
+  * given {@link Any}. This implementation first creates
+  * a {@link UShortSeqHolder} and then calls
+  * {@link Any#insert_Streamable(Streamable)}.
+  *
+  * @param into the target Any.
+  * @param that the array to insert.
+  */
+  public static void insert(Any into, short[] that)
+  {
+    UShortSeqHolder holder = new UShortSeqHolder(that);
+    into.insert_Streamable(holder);
+  }
+
+  /**
+   * Reads the <code>short[]</code> from the CORBA input stream.
+   *
+   * @param input the CORBA (not java.io) stream to read from.
+   * @return the value from the stream.
+   */
+  public static short[] read(InputStream input)
+  {
+    short[] value = new short[ input.read_long() ];
+    input.read_ushort_array(value, 0, value.length);
+    return value;
+  }
+
+  /**
+   * Creates and returns a new instance of the TypeCode,
+   * corresponding the CORBA <code>UShortSeq</code>.
+   * The length of the sequence is left with the initial
+   * value 0.
+   */
+  public static TypeCode type()
+  {
+    return new ArrayTypeCode(TCKind.tk_short);
+  }
+
+  /**
+   * Writes the <code>short[]</code> into the given stream.
+   *
+   * @param output the CORBA (not java.io) output stream to write.
+   * @param value the value that must be written.
+   */
+  public static void write(OutputStream output, short[] value)
+  {
+    output.write_long(value.length);
+    output.write_ushort_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UShortSeqHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UShortSeqHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UShortSeqHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UShortSeqHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,126 @@
+/* UShortSeqHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A sequence holder for CORBA <code>UShortSeq</code> that is mapped into
+ * java <code>short[]</code>.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class UShortSeqHolder
+  implements Streamable
+{
+  /**
+   * The <code>short[]</code> (CORBA <code>UShortSeq</code>) value,
+   * held by this UShortSeqHolder.
+   */
+  public short[] value;
+
+  /**
+   * The type code for this holder. Each holder has a different instance.
+   */
+  private final ArrayTypeCode typecode =
+    new ArrayTypeCode(TCKind.tk_ushort);
+
+  /**
+   * Constructs an instance of UShortSeqHolder,
+   * initializing {@link #value} to <code>null</code>.
+   */
+  public UShortSeqHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of UShortSeqHolder,
+   * initializing {@link #value} to the given <code>short[]</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public UShortSeqHolder(short[] initial_value)
+  {
+    value = initial_value;
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Fill in the {@link value } field by reading the required data
+   * from the given stream. This method first reads the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.InputStream#read_ushort_array }.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = new short[ input.read_long() ];
+    input.read_ushort_array(value, 0, value.length);
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  public TypeCode _type()
+  {
+    return typecode;
+  }
+
+  /**
+   * Write the {@link value } field to the given stream.
+   * This method first writes the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.OutputStream#write_ushort_array }.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_long(value.length);
+    output.write_ushort_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnionMember.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnionMember.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnionMember.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnionMember.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,103 @@
+/* UnionMember.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * The component, describing the member of CORBA IDL <code>union</code>.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class UnionMember
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use 1.4 version serialVersionUID for interoperability.
+   */
+  private static final long serialVersionUID = 5506049694216071974L;
+
+  /**
+   * The label of the union member.
+   */
+  public Any label;
+
+  /**
+   * The IDL type of the union member.
+   */
+  public IDLType type_def;
+
+  /**
+   * The name of the union member.
+   */
+  public String name;
+
+  /**
+   * The typecode of the union member.
+   */
+  public TypeCode type;
+
+  /**
+   * Creates a union member with all fields
+   * left with the default value <code>null</code>.
+   */
+  public UnionMember()
+  {
+  }
+
+  /**
+   * Creates a union member.
+   *
+   * @param a_name member name.
+   * @param a_label member label.
+   * @param a_type member type code.
+   * @param a_type_def member IDL type definition.
+   */
+  public UnionMember(String a_name, Any a_label, TypeCode a_type,
+                     IDLType a_type_def
+                    )
+  {
+    name = a_name;
+    label = a_label;
+    type = a_type;
+    type_def = a_type_def;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnionMemberHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnionMemberHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnionMemberHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnionMemberHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,182 @@
+/* UnionMemberHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+import gnu.CORBA.TypeCodeHelper;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations for the union member.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class UnionMemberHelper
+{
+  /**
+   * The cached typecode value (computed once).
+   */
+  private static TypeCode typeCode;
+
+  /**
+   * Used in creating recursive unions.
+   */
+  private static boolean active;
+
+  /**
+   * Inset the union member into the given Any.
+   */
+  public static void insert(Any a, UnionMember that)
+  {
+    OutputStream out = a.create_output_stream();
+    a.type(type());
+    write(out, that);
+    a.read_value(out.create_input_stream(), type());
+  }
+
+  /**
+   * Extract the union member from the given Any.
+   */
+  public static UnionMember extract(Any a)
+  {
+    return read(a.create_input_stream());
+  }
+
+  /**
+   * Create and return the typecode for this union member.
+   */
+  public static synchronized TypeCode type()
+  {
+    if (typeCode == null)
+      {
+        synchronized (TypeCode.class)
+          {
+            if (typeCode == null)
+              {
+                if (active)
+                  {
+                    return OrbRestricted.Singleton.create_recursive_tc(id());
+                  }
+                active = true;
+
+                ORB orb = OrbRestricted.Singleton;
+
+                StructMember[] members = new StructMember[ 4 ];
+                TypeCode member;
+                member = orb.create_string_tc(0);
+                member =
+                  orb.create_alias_tc(IdentifierHelper.id(), "Identifier",
+                                      member
+                                     );
+                members [ 0 ] = new StructMember("name", member, null);
+                member = orb.get_primitive_tc(TCKind.tk_any);
+                members [ 1 ] = new StructMember("label", member, null);
+                member = orb.create_string_tc(0);
+                member = orb.get_primitive_tc(TCKind.tk_TypeCode);
+                members [ 2 ] = new StructMember("type", member, null);
+                member = IDLTypeHelper.type();
+                members [ 3 ] = new StructMember("type_def", member, null);
+                typeCode =
+                  orb.create_struct_tc(UnionMemberHelper.id(), "UnionMember",
+                                       members
+                                      );
+                active = false;
+              }
+          }
+      }
+    return typeCode;
+  }
+
+  /**
+   * Return the UnionMember repository id.
+   *
+   * @return "IDL:omg.org/CORBA/UnionMember:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CORBA/UnionMember:1.0";
+  }
+
+  /**
+   * Read the union member from the given stream.
+   */
+  public static UnionMember read(InputStream istream)
+  {
+    try
+      {
+        UnionMember value = new UnionMember();
+        value.name = istream.read_string();
+        value.label = istream.read_any();
+        value.type = TypeCodeHelper.read(istream);
+        value.type_def = IDLTypeHelper.read(istream);
+        return value;
+      }
+    catch (UserException ex)
+      {
+        MARSHAL m = new MARSHAL();
+        m.minor = Minor.UserException;
+        m.initCause(ex);
+        throw m;
+      }
+  }
+
+  /**
+   * Write the union member to the given stream.
+   */
+  public static void write(OutputStream ostream, UnionMember value)
+  {
+    try
+      {
+        ostream.write_string(value.name);
+        ostream.write_any(value.label);
+        TypeCodeHelper.write(ostream, value.type);
+        IDLTypeHelper.write(ostream, value.type_def);
+      }
+    catch (UserException ex)
+      {
+        MARSHAL m = new MARSHAL();
+        m.minor = Minor.UserException;        
+        m.initCause(ex);
+        throw m;
+      }
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserException.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserException.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserException.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserException.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,87 @@
+/* UnknownUserException.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * A wrapper against an unknown  user exception that has been thrown
+ * on remote side and returned by the server. The instance of this
+ * class is returned by {@link Request#env()}.
+ *
+ * @see Environment#exception()
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class UnknownUserException
+  extends UserException
+  implements IDLEntity, Serializable
+{
+  /**
+   * The Any, holding the actual exception, that has been thrown
+   * by the server.
+   */
+  public Any except;
+
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 3106202258203879281L;
+
+  /**
+   * Create an unitialised instance of the unknown user exception.
+   */
+  public UnknownUserException()
+  {
+  }
+
+  /**
+   * Create the instance of the unknow user exception, initialised
+   * to the given value.
+   *
+   * @param an_exception the exception, that has actually been thrown
+   * by the server.
+   */
+  public UnknownUserException(Any an_exception)
+  {
+    except = an_exception;
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserExceptionHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserExceptionHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserExceptionHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserExceptionHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,149 @@
+/* UnknownUserExceptionHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TCKind;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+* The helper operations for the exception {@link UnknownUserException}.
+*
+* @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+*/
+public abstract class UnknownUserExceptionHelper
+{
+  /**
+   * Create the UnknownUserException typecode (structure,
+   * named "UnknownUserException", containing a single field of
+   * type {@link Any}, named "except".
+   */
+  public static TypeCode type()
+  {
+        ORB orb = OrbRestricted.Singleton;
+        StructMember[] members = new StructMember[ 1 ];
+
+        TypeCode field;
+
+        field = orb.get_primitive_tc(TCKind.tk_any);
+        members [ 0 ] = new StructMember("except", field, null);
+        return
+          orb.create_exception_tc(id(), "UnknownUserException", members);
+  }
+
+  /**
+  * Insert the UnknownUserException into the given Any.
+  * This method uses the UnknownUserExceptionHolder.
+  *
+  * @param any the Any to insert into.
+  * @param that the UnknownUserException to insert.
+  */
+  public static void insert(Any any, UnknownUserException that)
+  {
+    any.insert_Streamable(new UnknownUserExceptionHolder(that));
+  }
+
+  /**
+   * Extract the UnknownUserException from given Any.
+   * This method uses the UnknownUserExceptionHolder.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain
+   * UnknownUserException.
+   */
+  public static UnknownUserException extract(Any any)
+  {
+    try
+      {
+        return ((UnknownUserExceptionHolder) any.extract_Streamable()).value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("UnknownUserException expected");
+        bad.minor = Minor.Any;
+        bad.initCause(cex);
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the UnknownUserException repository id.
+   *
+   * @return "IDL:omg.org/CORBA/UnknownUserException:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CORBA/UnknownUserException:1.0";
+  }
+
+  /**
+   * Read the exception from the CDR intput stream.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   */
+  public static UnknownUserException read(InputStream input)
+  {
+    // Read the exception repository id.
+    String id = input.read_string();
+    UnknownUserException value = new UnknownUserException();
+
+    value.except = input.read_any();
+    return value;
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   *
+   * @param output a org.omg.CORBA.portable stream stream to write into.
+   * @param value a value to write.
+   */
+  public static void write(OutputStream output, UnknownUserException value)
+  {
+    // Write the exception repository id.
+    output.write_string(id());
+    output.write_any(value.except);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserExceptionHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserExceptionHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserExceptionHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UnknownUserExceptionHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,103 @@
+/* UnknownUserExceptionHolder.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+* A holder for the exception {@link UnknownUserException}.
+
+* @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+*/
+public final class UnknownUserExceptionHolder implements Streamable
+{
+  /**
+   * The stored UnknownUserException value.
+   */
+  public UnknownUserException value;
+
+  /**
+   * Create the unitialised instance, leaving the value field
+   * with default <code>null</code> value.
+   */
+  public UnknownUserExceptionHolder()
+  {
+  }
+
+  /**
+   * Create the initialised instance.
+   * @param initialValue the value that will be assigned to
+   * the <code>value</code> field.
+   */
+  public UnknownUserExceptionHolder(UnknownUserException initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the {@link #value} by data from the CDR stream.
+   *
+   * @param input the org.omg.CORBA.portable stream to read.
+   */
+  public void _read(InputStream input)
+  {
+    value = UnknownUserExceptionHelper.read(input);
+  }
+
+  /**
+   * Write the stored value into the CDR stream.
+   *
+   * @param output the org.omg.CORBA.portable stream to write.
+   */
+  public void _write(OutputStream output)
+  {
+    UnknownUserExceptionHelper.write(output, value);
+  }
+
+  /**
+   * Get the typecode of the UnknownUserException.
+   */
+  public TypeCode _type()
+  {
+    return UnknownUserExceptionHelper.type();
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UserException.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UserException.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UserException.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/UserException.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,74 @@
+/* UserException.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * The root class for CORBA IDL-defined user exceptions.
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class UserException
+  extends Exception
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use serialVersionUID for interoperability.
+   * Using the version 1.4 UID.
+   */
+  private static final long serialVersionUID = -6594940734566091244L;
+
+  /**
+   * Constructs a the exception.
+   */
+  protected UserException()
+  {
+  }
+
+  /**
+   * Constructs the exception, explaining the reason of throwing it.
+   * @param reason a string, explaining, why the exception has been thrown.
+   */
+  protected UserException(String reason)
+  {
+    super(reason);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_ABSTRACT.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_ABSTRACT.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_ABSTRACT.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_ABSTRACT.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,52 @@
+/* VM_ABSTRACT.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+package org.omg.CORBA;
+
+/**
+ * Specifies that the object is an abstract interface. One of the possible
+ * values, returned by {@link TypeCode#type_modifier()}.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface VM_ABSTRACT
+{
+  /**
+   * States the abstract interface in a typecode.
+   */
+  short value = 2;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_CUSTOM.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_CUSTOM.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_CUSTOM.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_CUSTOM.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,53 @@
+/* VM_CUSTOM.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+package org.omg.CORBA;
+
+/**
+ * Indicates a custom marshalled value type. One of the possible
+ * values, returned by {@link TypeCode#type_modifier()}.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface VM_CUSTOM
+{
+  /**
+   * States that the code used to represent a custom
+   * marshalled value type in a typecode.
+   */
+  short value = 1;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_NONE.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_NONE.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_NONE.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_NONE.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,52 @@
+/* VM_NONE.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+package org.omg.CORBA;
+
+/**
+ * One of the possible values, returned by {@link TypeCode#type_modifier()}.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface VM_NONE
+{
+  /**
+   * States that the code used to represent the one of
+   * the values of a value type in a typecode.
+   */
+  short value = 0;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_TRUNCATABLE.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_TRUNCATABLE.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_TRUNCATABLE.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VM_TRUNCATABLE.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,53 @@
+/* VM_TRUNCATABLE.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+package org.omg.CORBA;
+
+/**
+ * Indicates a truncatable value type. One of the possible
+ * values, returned by {@link TypeCode#type_modifier()}.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface VM_TRUNCATABLE
+{
+  /**
+   * States that the code used to represent a truncatable
+   * value type in a typecode.
+   */
+  short value = 3;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueBaseHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueBaseHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueBaseHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueBaseHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,135 @@
+/* ValueBaseHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.CDR.Vio;
+import gnu.CORBA.typecodes.RecordTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+import java.io.Serializable;
+
+/**
+ * A helper operations for the value base type ({@link ValueBase}).
+ *
+ * @since 1.3
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class ValueBaseHelper
+{
+  /**
+   * Extract the value type from the given Any.
+   *
+   * @param a the Any to extract from.
+   *
+   * @return the extracted value type.
+   */
+  public static Serializable extract(Any a)
+  {
+    return a.extract_Value();
+  }
+
+  /**
+   * Return the value base helper repository id.
+   *
+   * @return IDL:omg.org/CORBA/ValueBase:1.0, always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CORBA/ValueBase:1.0";
+  }
+
+  /**
+   * Insert the value base that is Serializable into
+   * the given Any.
+   *
+   * @param a the Any to insert into.
+   * @param that the value base to insert.
+   */
+  public static void insert(Any a, Serializable that)
+  {
+    a.insert_Value(that);
+  }
+
+  /**
+   * Read the value base from the given input stream.
+   *
+   * @param input a stream to read from.
+   *
+   * @return the loaded value.
+   *
+   * @throws MARSHAL if the reading has failed due any reason.
+   */
+  public static Serializable read(InputStream input)
+  {
+    return Vio.read(input);
+  }
+
+  /**
+   * Get the typecode of the value type.
+   * @return
+   */
+  public static TypeCode type()
+  {
+    RecordTypeCode r = new RecordTypeCode(TCKind.tk_value);
+    return r;
+  }
+
+  /**
+   * Write the value base into the given stream.
+   *
+   * If the passed value implements the {@link CustomMarshal},
+   * the helper uses {@link CustomMarshal#marshal}
+   * to write the content in a user defined way. Otherwise,
+   * this implementation initialises the {@link ObjectOutputStream}
+   * and writes through it.
+   *
+   * @param output a stream to write to.
+   *
+   * @param value a value to write.
+   *
+   * @throws MARSHAL if the writing failed due any reason.
+   */
+  public static void write(OutputStream output, Serializable value)
+  {
+    Vio.write(output, value);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueBaseHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueBaseHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueBaseHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueBaseHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,109 @@
+/* ValueBaseHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+import java.io.Serializable;
+
+/**
+ * A holder to store a {@link ValueBase} that is handled as
+ * {@link Serializable} here.
+ *
+ * @since 1.3
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class ValueBaseHolder
+  implements Streamable
+{
+  /**
+   * A stored value of the value base type.
+   */
+  public Serializable value;
+
+  /**
+   * Create an unitialised instance.
+   */
+  public ValueBaseHolder()
+  {
+  }
+
+  /**
+   * Create an instance, initialised into the given value.
+   *
+   * @param initial an initial value.
+   */
+  public ValueBaseHolder(Serializable initial)
+  {
+    value = initial;
+  }
+
+  /**
+   * Read fill in the value field by reading an instance from the
+   * given input stream. Uses {@link ValueBaseHelper}
+   *
+   * @param input a stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = ValueBaseHelper.read(input);
+  }
+
+  /**
+   * Get the typecode of the stored instance. Uses {@link ValueBaseHelper}
+   */
+  public TypeCode _type()
+  {
+    return ValueBaseHelper.type();
+  }
+
+  /**
+   * Write the stored instance to the given output stream.
+   * Uses {@link ValueBaseHelper}
+   *
+   * @param output a stream to write to.
+   */
+  public void _write(OutputStream output)
+  {
+    ValueBaseHelper.write(output, value);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueMember.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueMember.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueMember.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueMember.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,124 @@
+/* ValueMember.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * The class, defining properties of the value member.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class ValueMember
+  implements Serializable, IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -2507594168537449114L;
+
+  /**
+   * The typedef that represents the IDL type of the value member.
+   */
+  public IDLType type_def;
+
+  /**
+   * The repository ID of the value for that this member is defined
+   */
+  public String defined_in;
+
+  /**
+   * The repository ID of this value member itself.
+   */
+  public String id;
+
+  /** The name of the value member. */
+  public String name;
+
+  /**
+   * The version of the value in which this member is defined.
+   */
+  public String version;
+
+  /** The type of of this value member. */
+  public TypeCode type;
+
+  /**
+   * The type of access (public, private) of this value member.
+   * This field can be equal to either {@link PUBLIC_MEMBER#value} or
+   * {@link PRIVATE_MEMBER#value}.
+   */
+  public short access;
+
+  /**
+   * Create the value member with all fields initialised to default values
+   * (0 and <code>null</code>).
+   */
+  public ValueMember()
+  {
+  }
+
+  /**
+   * Create the value member, specifying the field values.
+   *
+   * @param a_name name.
+   * @param an_id id .
+   * @param is_defined_in id of the value where the member is defined.
+   * @param a_version version.
+   * @param a_type tye.
+   * @param a_type_def {@link IDLType} (typeded).
+   * @param an_access accessibility scope. Can be equal to either
+   * {@link PUBLIC_MEMBER#value} or {@link PRIVATE_MEMBER#value}.
+   */
+  public ValueMember(String a_name, String an_id, String is_defined_in,
+                     String a_version, TypeCode a_type, IDLType a_type_def,
+                     short an_access
+                    )
+  {
+    name = a_name;
+    id = an_id;
+    defined_in = is_defined_in;
+    version = a_version;
+    type = a_type;
+    type_def = a_type_def;
+    access = an_access;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueMemberHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueMemberHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueMemberHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/ValueMemberHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,210 @@
+/* ValueMemberHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+import gnu.CORBA.TypeCodeHelper;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for the value member.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class ValueMemberHelper
+{
+  /**
+   * The cached typecode value, computed once.
+   */
+  private static TypeCode typeCode = null;
+
+  /**
+   * Used when creating typecodes with recursive value members.
+   */
+  private static boolean active = false;
+
+  /**
+   * Insert the value member into the given Any.
+   */
+  public static void insert(Any a, ValueMember that)
+  {
+    OutputStream out = a.create_output_stream();
+    a.type(type());
+    write(out, that);
+    a.read_value(out.create_input_stream(), type());
+  }
+
+  /**
+   * Extract the value member from the given Any.
+   */
+  public static ValueMember extract(Any a)
+  {
+    return read(a.create_input_stream());
+  }
+
+  /**
+   * Create a typecode for this value member.
+   */
+  public static synchronized TypeCode type()
+  {
+    if (typeCode == null)
+      {
+        synchronized (TypeCode.class)
+          {
+            if (typeCode == null)
+              {
+                ORB orb = OrbRestricted.Singleton;
+
+                if (active)
+                  {
+                    return orb.create_recursive_tc(id());
+                  }
+                active = true;
+
+                StructMember[] members = new StructMember[ 7 ];
+                TypeCode member;
+                member = orb.create_string_tc(0);
+                member =
+                  orb.create_alias_tc(IdentifierHelper.id(), "Identifier",
+                                      member
+                                     );
+                members [ 0 ] = new StructMember("name", member, null);
+                member = orb.create_string_tc(0);
+                member =
+                  orb.create_alias_tc(RepositoryIdHelper.id(), "RepositoryId",
+                                      member
+                                     );
+                members [ 1 ] = new StructMember("id", member, null);
+                member = orb.create_string_tc(0);
+                member =
+                  orb.create_alias_tc(RepositoryIdHelper.id(), "RepositoryId",
+                                      member
+                                     );
+                members [ 2 ] = new StructMember("defined_in", member, null);
+                member = orb.create_string_tc(0);
+                member =
+                  orb.create_alias_tc(VersionSpecHelper.id(), "VersionSpec",
+                                      member
+                                     );
+                members [ 3 ] = new StructMember("version", member, null);
+                member = orb.create_string_tc(0);
+                member = orb.get_primitive_tc(TCKind.tk_TypeCode);
+                members [ 4 ] = new StructMember("type", member, null);
+                member = IDLTypeHelper.type();
+                members [ 5 ] = new StructMember("type_def", member, null);
+                member = orb.get_primitive_tc(TCKind.tk_short);
+                member =
+                  orb.create_alias_tc(VisibilityHelper.id(), "Visibility",
+                                      member
+                                     );
+                members [ 6 ] = new StructMember("access", member, null);
+                typeCode =
+                  orb.create_struct_tc(ValueMemberHelper.id(), "ValueMember",
+                                       members
+                                      );
+                active = false;
+              }
+          }
+      }
+    return typeCode;
+  }
+
+  /**
+   * Return the ValueMember repository id.
+   *
+   * @return "IDL:omg.org/CORBA/ValueMember:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CORBA/ValueMember:1.0";
+  }
+
+  /**
+   * Reads the value member from the given stream.
+   */
+  public static ValueMember read(InputStream istream)
+  {
+    try
+      {
+        ValueMember value = new ValueMember();
+        value.name = istream.read_string();
+        value.id = istream.read_string();
+        value.defined_in = istream.read_string();
+        value.version = istream.read_string();
+        value.type = TypeCodeHelper.read(istream);
+        value.type_def = IDLTypeHelper.read(istream);
+        value.access = istream.read_short();
+        return value;
+      }
+    catch (UserException ex)
+      {
+        MARSHAL m = new MARSHAL();
+        m.minor = Minor.UserException;        
+        m.initCause(ex);
+        throw m;
+      }
+  }
+
+  /**
+   * Writes the value member to the given stream.
+   */
+  public static void write(OutputStream ostream, ValueMember value)
+  {
+    try
+      {
+        ostream.write_string(value.name);
+        ostream.write_string(value.id);
+        ostream.write_string(value.defined_in);
+        ostream.write_string(value.version);
+        TypeCodeHelper.write(ostream, value.type);
+        IDLTypeHelper.write(ostream, value.type_def);
+        ostream.write_short(value.access);
+      }
+    catch (UserException ex)
+      {
+        MARSHAL m = new MARSHAL();
+        m.minor = Minor.UserException;        
+        m.initCause(ex);
+        throw m;
+      }
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VersionSpecHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VersionSpecHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VersionSpecHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VersionSpecHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,116 @@
+/* VersionSpecHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A formal helper for the CORBA VersionSpec that is identical to the
+ * narrow string.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class VersionSpecHelper
+{
+  /**
+   * Insert the VersionSpec into Any (uses {@link Any.insert_string}).
+   *
+   * @param a the Any to insert into.
+   * @param that the string to insert.
+   */
+  public static void insert(Any a, String that)
+  {
+    a.insert_string(that);
+  }
+
+  /**
+   * Extract the VersionSpec from Any ((uses {@link Any.extract_string}).
+   *
+   * @param a the Any to extract from.
+   */
+  public static String extract(Any a)
+  {
+    return a.extract_string();
+  }
+
+  /**
+   * Return an string alias typecode, named "VersionSpec".
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    return orb.create_alias_tc(id(), "VersionSpec", orb.create_string_tc(0));
+  }
+
+  /**
+   * Return the VersionSpec repository id.
+   * @return "IDL:omg.org/CORBA/VersionSpec:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CORBA/VersionSpec:1.0";
+  }
+
+  /**
+   * Calls {@link InputStream#read_string()}.
+   *
+   * @param istream the stream to read from.
+   */
+  public static String read(InputStream istream)
+  {
+    return istream.read_string();
+  }
+
+  /**
+   * Calls {@link OutputStream#write_string()}.
+   *
+   * @param ostream the stream to write into.
+   * @param value the string (VersionSpec) value to write.
+   */
+  public static void write(OutputStream ostream, String value)
+  {
+    ostream.write_string(value);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VisibilityHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VisibilityHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VisibilityHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/VisibilityHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,118 @@
+/* VisibilityHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations for a Visibility that is mapped into java and CORBA
+ * <code>short</code>. The Visibility normally takes one of the two values,
+ * {@link PUBLIC_MEMBER#value} or {@link PRIVATE_MEMBER#value}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class VisibilityHelper
+{
+  /**
+   * Insert the Visibility into the given Any.
+   * Uses {@link Any#insert_short}.
+   */
+  public static void insert(Any any, short that)
+  {
+    any.insert_short(that);
+  }
+
+  /**
+   * Extract the Visibility from the given Any.
+   * Uses {@link Any#extract_short}.
+   */
+  public static short extract(Any any)
+  {
+    return any.extract_short();
+  }
+
+  /**
+   * Return an alias of short, named "Visibility".
+   */
+  public static TypeCode type()
+  {
+        TypeCode tshort =
+          OrbRestricted.Singleton.get_primitive_tc(TCKind.tk_short);
+        return
+          OrbRestricted.Singleton.create_alias_tc(id(), "Visibility", tshort);
+  }
+
+  /**
+   * Get the Visibility repository id.
+   *
+   * @return "IDL:omg.org/CORBA/Visibility:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CORBA/Visibility:1.0";
+  }
+
+  /**
+   * Read the visibility value (as short) from the CDR intput stream.
+   *
+   * Uses {@link InputStream#read_short()}.
+   *
+   * @param istream a stream to read from.
+   */
+  public static short read(InputStream istream)
+  {
+    return istream.read_short();
+  }
+
+  /**
+   * Write the visibility value (as short) to the CDR output stream.
+   *
+   * USes {@link OutputStream#write_short(short)}.
+   *
+   * @param ostream a stream to write into.
+   * @param value a value to write.
+   */
+  public static void write(OutputStream ostream, short value)
+  {
+    ostream.write_short(value);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WCharSeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WCharSeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WCharSeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WCharSeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,142 @@
+/* WCharSeqHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.TypeCodePackage.BadKind;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Provides static helper methods for working with
+ * CORBA sequence of <code>char</code>
+ * (<code>WCharSeq</code>).
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class WCharSeqHelper
+{
+  /**
+   * Extract the <code>char[]</code> from the
+   * given {@link Any}. This implementation expects the
+   * {@link Any} to hold the instance of {@link WCharSeqHolder}
+   * that is returned by {@link Any#extract_Streamable() }.
+   *
+   * @param a an Any to extract the array from.
+   *
+   * @return the extracted array.
+   *
+   * @throws ClassCastException if the Any contains something other than the
+   * the {@link WCharSeqHolder}.
+   */
+  public static char[] extract(Any a)
+  {
+    WCharSeqHolder h = (WCharSeqHolder) a.extract_Streamable();
+    return h.value;
+  }
+
+  /**
+   * Returns the agreed Id, delegating functionality to
+   * the {@link #type()}.id().
+   */
+  public static String id()
+  {
+    try
+      {
+        return type().id();
+      }
+    catch (BadKind ex)
+      {
+        // Should never happen under correct work.
+        throw new Error("Please report this bug.", ex);
+      }
+  }
+
+  /**
+  * Insert into the given <code>char[]</code> into the
+  * given {@link Any}. This implementation first creates
+  * a {@link WCharSeqHolder} and then calls
+  * {@link Any#insert_Streamable(Streamable)}.
+  *
+  * @param into the target Any.
+  * @param that the array to insert.
+  */
+  public static void insert(Any into, char[] that)
+  {
+    WCharSeqHolder holder = new WCharSeqHolder(that);
+    into.insert_Streamable(holder);
+  }
+
+  /**
+   * Reads the <code>char[]</code> from the CORBA input stream.
+   *
+   * @param input the CORBA (not java.io) stream to read from.
+   * @return the value from the stream.
+   */
+  public static char[] read(InputStream input)
+  {
+    char[] value = new char[ input.read_long() ];
+    input.read_wchar_array(value, 0, value.length);
+    return value;
+  }
+
+  /**
+   * Creates and returns a new instance of the TypeCode,
+   * corresponding the CORBA <code>WCharSeq</code>.
+   * The length of the sequence is left with the initial
+   * value 0.
+   */
+  public static TypeCode type()
+  {
+    return new ArrayTypeCode(TCKind.tk_char);
+  }
+
+  /**
+   * Writes the <code>char[]</code> into the given stream.
+   *
+   * @param output the CORBA (not java.io) output stream to write.
+   * @param value the value that must be written.
+   */
+  public static void write(OutputStream output, char[] value)
+  {
+    output.write_long(value.length);
+    output.write_wchar_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WCharSeqHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WCharSeqHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WCharSeqHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WCharSeqHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,126 @@
+/* WCharSeqHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A sequence holder for CORBA <code>WCharSeq</code> that is mapped into
+ * java <code>char[]</code>.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class WCharSeqHolder
+  implements Streamable
+{
+  /**
+   * The <code>char[]</code> (CORBA <code>WCharSeq</code>) value,
+   * held by this WCharSeqHolder.
+   */
+  public char[] value;
+
+  /**
+   * The type code for this holder. Each holder has a different instance.
+   */
+  private final ArrayTypeCode typecode =
+    new ArrayTypeCode(TCKind.tk_wchar);
+
+  /**
+   * Constructs an instance of WCharSeqHolder,
+   * initializing {@link #value} to <code>null</code>.
+   */
+  public WCharSeqHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of WCharSeqHolder,
+   * initializing {@link #value} to the given <code>char[]</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public WCharSeqHolder(char[] initial_value)
+  {
+    value = initial_value;
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Fill in the {@link value } field by reading the required data
+   * from the given stream. This method first reads the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.InputStream#input.read_wchar_array }.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = new char[ input.read_long() ];
+    input.read_wchar_array(value, 0, value.length);
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  public TypeCode _type()
+  {
+    return typecode;
+  }
+
+  /**
+   * Write the {@link value } field to the given stream.
+   * This method first writes the array size
+   * (as CORBA <code>long</code>) and then calls the
+   * {@link org.omg.CORBA.portable.OutputStream#input.write_wchar_array }.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_long(value.length);
+    output.write_wchar_array(value, 0, value.length);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringSeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringSeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringSeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringSeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,148 @@
+/* WStringSeqHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.TypeCodePackage.BadKind;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Provides static helper methods for working with
+ * CORBA <code>wstring</code> array.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class WStringSeqHelper
+{
+  /**
+   * Extract the <code>String[]</code> from the
+   * given {@link Any}. This implementation expects the
+   * {@link Any} to hold the instance of {@link WStringSeqHolder}
+   * that is returned by {@link Any#extract_Streamable() }.
+   *
+   * @param a an Any to extract the array from.
+   *
+   * @return the extracted array.
+   *
+   * @throws ClassCastException if the Any contains something other than the
+   * the {@link WStringSeqHolder}.
+   */
+  public static String[] extract(Any a)
+  {
+    WStringSeqHolder h = (WStringSeqHolder) a.extract_Streamable();
+    return h.value;
+  }
+
+  /**
+   * Returns the agreed Id, delegating functionality to
+   * the {@link #type()}.id().
+   */
+  public static String id()
+  {
+    try
+      {
+        return type().id();
+      }
+    catch (BadKind ex)
+      {
+        // Should never happen under correct work.
+        throw new Error("Please report this bug.", ex);
+      }
+  }
+
+  /**
+  * Insert into the given <code>String[]</code> into the
+  * given {@link Any}. This implementation first creates
+  * a {@link WStringSeqHolder} and then calls
+  * {@link Any#insert_Streamable(Streamable)}.
+  *
+  * @param into the target Any.
+  * @param that the array to insert.
+  */
+  public static void insert(Any into, String[] that)
+  {
+    WStringSeqHolder holder = new WStringSeqHolder(that);
+    into.insert_Streamable(holder);
+  }
+
+  /**
+   * Reads the <code>String[]</code> from the CORBA input stream.
+   *
+   * @param input the CORBA (not java.io) stream to read from.
+   * @return the value from the stream.
+   */
+  public static String[] read(InputStream input)
+  {
+    String[] value = new String[ input.read_long() ];
+    for (int i = 0; i < value.length; i++)
+      {
+        value [ i ] = input.read_wstring();
+      }
+    return value;
+  }
+
+  /**
+   * Creates and returns a new instance of the TypeCode,
+   * corresponding the CORBA <code>wstring[]</code>.
+   * The length of the sequence is left with the initial
+   * value 0.
+   */
+  public static TypeCode type()
+  {
+    return new ArrayTypeCode(TCKind.tk_string);
+  }
+
+  /**
+   * Writes the <code>String[]</code> into the given stream.
+   *
+   * @param output the CORBA (not java.io) output stream to write.
+   * @param value the value that must be written.
+   */
+  public static void write(OutputStream output, String[] value)
+  {
+    output.write_long(value.length);
+
+    for (int i = 0; i < value.length; i++)
+      {
+        output.write_wstring(value [ i ]);
+      }
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringSeqHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringSeqHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringSeqHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringSeqHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,131 @@
+/* WStringSeqHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.typecodes.ArrayTypeCode;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A sequence holder for CORBA <code>wstring[]</code> that is mapped into
+ * java <code>String[]</code>.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class WStringSeqHolder
+  implements Streamable
+{
+  /**
+   * The <code>String[]</code> (CORBA <code>wstring[]</code>) value,
+   * held by this WStringSeqHolder.
+   */
+  public String[] value;
+
+  /**
+   * The type code for this holder. Each holder has a different instance.
+   */
+  private final ArrayTypeCode typecode =
+    new ArrayTypeCode(TCKind.tk_wchar);
+
+  /**
+   * Constructs an instance of WStringSeqHolder,
+   * initializing {@link #value} to <code>null</code>.
+   */
+  public WStringSeqHolder()
+  {
+  }
+
+  /**
+   * Constructs an instance of WStringSeqHolder,
+   * initializing {@link #value} to the given <code>String</code>.
+   *
+   * @param initial_value a value that will be assigned to the
+   * {@link #value} field.
+   */
+  public WStringSeqHolder(String[] initial_value)
+  {
+    value = initial_value;
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Fill in the {@link value } field by reading the required data
+   * from the given stream. This method first reads the array size
+   * (as CORBA <code>long</code>and then all strings.
+   *
+   * @param input the input stream to read from.
+   */
+  public void _read(InputStream input)
+  {
+    value = new String[ input.read_long() ];
+    for (int i = 0; i < value.length; i++)
+      {
+        value [ i ] = input.read_wstring();
+      }
+    typecode.setLength(value.length);
+  }
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  public TypeCode _type()
+  {
+    return typecode;
+  }
+
+  /**
+   * Write the {@link value } field to the given stream.
+   * This method first writes the array size
+   * (as CORBA <code>long</code> and then all strings.
+   *
+   * @param output the output stream to write into.
+   */
+  public void _write(OutputStream output)
+  {
+    output.write_long(value.length);
+
+    for (int i = 0; i < value.length; i++)
+      {
+        output.write_wstring(value [ i ]);
+      }
+  }
+}

Propchange: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringSeqHolder.java

------------------------------------------------------------------------------
    svn:executable = *

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringValueHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringValueHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringValueHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WStringValueHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,193 @@
+/* WStringValueHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.portable.BoxedValueHelper;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+import java.io.Serializable;
+
+/**
+ * Provides helper operations for the Wide String value type, treating a
+ * Wide String as a CORBA value type rather than as a primitive type. The OMG
+ * specification states this may be convenient in some specific
+ * cases. The typecode is different, but the reading/writing format in
+ * this implementation is the same as for the ordinary wide string. This is
+ * that Sun's IDL compiler (v1.4) would generate.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public class WStringValueHelper
+  implements BoxedValueHelper
+{
+  /**
+   * The Wide String value helper repository Id.
+   */
+  private static final String id = "IDL:omg.org/CORBA/WStringValue:1.0";
+
+  /**
+   * The Wide String typecode.
+   */
+  private static final TypeCode twString =
+    OrbRestricted.Singleton.create_wstring_tc(0);
+
+  /**
+   * Returns the String Value repository Id.
+   * @return "IDL:omg.org/CORBA/WStringValue:1.0", always.
+   */
+  public String get_id()
+  {
+    return id;
+  }
+
+  /**
+   * Returns the String Value repository Id.
+   * @return "IDL:omg.org/CORBA/WStringValue:1.0", always.
+   */
+  public static String id()
+  {
+    return id;
+  }
+
+  /**
+   * Read the wide string value from the input stream.
+   *
+   * @param istream a stream to read from.
+   *
+   * @return a string (delegates to read_wstring()).
+   */
+  public Serializable read_value(InputStream istream)
+  {
+    return istream.read_wstring();
+  }
+
+  /**
+   * Write the given wide string value into the output stream.
+   *
+   * @param ostream a stream to write into.
+   * @param a_string a string to write.
+   */
+  public void write_value(OutputStream ostream, Serializable a_string)
+  {
+    try
+      {
+        ostream.write_wstring((String) a_string);
+      }
+    catch (ClassCastException ex)
+      {
+        MARSHAL m = new MARSHAL("String expected");
+        m.minor = Minor.ClassCast;
+        throw m;
+      }
+  }
+
+  /**
+   * Extract the wide string from the given Any. The operation
+   * requires Any to hold a String value and not a String.
+   *
+   * @param an_any an Any to extract from.
+   *
+   * @return the extracted string.
+   */
+  public static String extract(Any an_any)
+  {
+    if (an_any.type().equal(type()))
+      {
+        an_any.type(twString);
+        return an_any.extract_wstring();
+      }
+    else
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("WString value type expected");
+        bad.minor = Minor.Any;
+        throw bad;        
+      }
+  }
+
+  /**
+   * Insert the wide string into the given Any. After the operation,
+   * the Any will have a Wide String Value typecode and not a
+   * String or WString typecode.
+   *
+   * @param an_any an Any to insert into.
+   *
+   * @param that a string to insert.
+   */
+  public static void insert(Any an_any, String that)
+  {
+    an_any.insert_wstring(that);
+    an_any.type(type());
+  }
+
+  /**
+   * Reads a wide string as a value type.
+   *
+   * @param in a stream to read value from.
+   */
+  public static String read(InputStream in)
+  {
+    return in.read_wstring();
+  }
+
+  /**
+   * Create and return the value box typecode, named "WStringValue", with the
+   * content typecode being unbounded string.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    return orb.create_value_box_tc(id(), "WStringValue", twString);
+  }
+
+  /**
+   * Writes a wide string as a value type.
+   *
+   * @param out a stream to write value into.
+   *
+   * @param a_string a string to write.
+   */
+  public static void write(OutputStream out, String a_string)
+  {
+    out.write_wstring(a_string);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransaction.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransaction.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransaction.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransaction.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,70 @@
+/* WrongTransaction.java -- Exception thrown due to out-of-bounds parameter
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+/**
+ * Thrown when the transaction scope mismatches.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class WrongTransaction
+  extends UserException
+{
+
+  /**
+   * Constructs a default <code>WrongTransaction</code> exception, with
+   * no detail message.
+   */
+  public WrongTransaction()
+  {
+    super();
+  }
+
+  /**
+   * Constructs a <code>WrongTransaction</code> exception using the specified
+   * message as the reason for throwing it.
+   *
+   * @param reason the reason, why the exception has been thrown.
+   */
+  public WrongTransaction(String reason)
+  {
+    super(reason);
+  }
+
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransactionHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransactionHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransactionHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransactionHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,143 @@
+/* WrongTransactionHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.EmptyExceptionHolder;
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TCKind;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+* The helper operations for the exception {@link WrongTransaction}.
+*
+* @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+*/
+public abstract class WrongTransactionHelper
+{
+  /**
+   * Create the WrongTransaction typecode (structure,
+   * named "WrongTransaction"), no fields.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    StructMember[] members = new StructMember[ 0 ];
+    return orb.create_exception_tc(id(), "WrongTransaction", members);
+  }
+
+  /* Every user exception with no user defined
+     fields can use EmptyExceptionHolder */
+
+  /**
+   * Insert the WrongTransaction into the given Any.
+   *
+   * @param any the Any to insert into.
+   * @param that the WrongTransaction to insert.
+   */
+  public static void insert(Any any, WrongTransaction that)
+  {
+    any.insert_Streamable(new EmptyExceptionHolder(that, type()));
+  }
+
+  /**
+   * Extract the WrongTransaction from given Any.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain WrongTransaction.
+   */
+  public static WrongTransaction extract(Any any)
+  {
+    try
+      {
+        EmptyExceptionHolder h =
+          (EmptyExceptionHolder) any.extract_Streamable();
+        return (WrongTransaction) h.value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("WrongTransaction expected");
+        bad.minor = Minor.Any;
+        bad.initCause(cex);
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the WrongTransaction repository id.
+   *
+   * @return "IDL:omg.org/CORBA/WrongTransaction:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CORBA/WrongTransaction:1.0";
+  }
+
+  /**
+   * Read the exception from the CDR intput stream.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   */
+  public static WrongTransaction read(InputStream input)
+  {
+    // Read the exception repository id.
+    String id = input.read_string();
+    WrongTransaction value = new WrongTransaction(id);
+
+    return value;
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   *
+   * @param output a org.omg.CORBA.portable stream stream to write into.
+   * @param value a value to write.
+   */
+  public static void write(OutputStream output, WrongTransaction value)
+  {
+    // Write the exception repository id.
+    output.write_string(id());
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransactionHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransactionHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransactionHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/WrongTransactionHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,103 @@
+/* WrongTransactionHolder.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A holder for the exception {@link WrongTransaction}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class WrongTransactionHolder implements Streamable
+{
+  /**
+   * The stored WrongTransaction value.
+   */
+  public WrongTransaction value;
+
+  /**
+   * Create the unitialised instance, leaving the value field
+   * with default <code>null</code> value.
+   */
+  public WrongTransactionHolder()
+  {
+  }
+
+  /**
+   * Create the initialised instance.
+   * @param initialValue the value that will be assigned to
+   * the <code>value</code> field.
+   */
+  public WrongTransactionHolder(WrongTransaction initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the {@link #value} by data from the CDR stream.
+   *
+   * @param input the org.omg.CORBA.portable stream to read.
+   */
+  public void _read(InputStream input)
+  {
+    value = WrongTransactionHelper.read(input);
+  }
+
+  /**
+   * Write the stored value into the CDR stream.
+   *
+   * @param output the org.omg.CORBA.portable stream to write.
+   */
+  public void _write(OutputStream output)
+  {
+    WrongTransactionHelper.write(output, value);
+  }
+
+  /**
+   * Get the typecode of the WrongTransaction.
+   */
+  public TypeCode _type()
+  {
+    return WrongTransactionHelper.type();
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/_IDLTypeStub.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/_IDLTypeStub.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/_IDLTypeStub.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/_IDLTypeStub.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,199 @@
+/* _IDLTypeStub.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.TypeCodeHelper;
+
+import org.omg.CORBA.portable.ApplicationException;
+import org.omg.CORBA.portable.Delegate;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.RemarshalException;
+
+import java.io.Serializable;
+
+/**
+ * The stub for the IDL type. This stub can be used to access the
+ * remote IDL type object, if its IOR is known. To create the
+ * working instance with the known IOR, pass {@link gnu.CORBA.IorDelegate}
+ * to the constructor.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class _IDLTypeStub
+  extends ObjectImpl
+  implements IDLType, Serializable
+{
+  /**
+  * Use serialVersionUID (v1.4) for interoperability.
+  */
+  private static final long serialVersionUID = 9150293942452453626L;
+
+  /**
+   * Create the instance of the IDL type stub without
+   * the set delegate. The delegate must be set anyway before calling
+   * any remote method.
+   */
+  public _IDLTypeStub()
+  {
+  }
+
+  /**
+   * Create an instance with the given delegate.
+   *
+   * @see gnu.CORBA.IorDelegate
+   */
+  public _IDLTypeStub(Delegate delegate)
+  {
+    _set_delegate(delegate);
+  }
+
+  /**
+   * Get the typecode of the remote IDL type object. The method is
+   * written following OMG specification, treating the typecode
+   * as a read only attribute rather than a method. This means,
+   * the operation name is "_get_type".
+   *
+   * @return a typecode, returned by the remote IDL type object.
+   */
+  public TypeCode type()
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("_get_type", true);
+        in = _invoke(out);
+        return TypeCodeHelper.read(in);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+        throw new org.omg.CORBA.MARSHAL(ex.getId());
+      }
+    catch (RemarshalException rex)
+      {
+        return type();
+      }
+    catch (UserException ex)
+      {
+        MARSHAL m = new MARSHAL();
+        m.minor = Minor.UserException;
+        m.initCause(ex);
+        throw m;
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /**
+   * Get the definition kind of the remote IDL type object. The method is
+   * written following OMG specification, treating the typecode
+   * as a read only attribute rather than a method. This means,
+   * the operation name is "_get_def_kind".
+   *
+   * @return a definition kind, returned by remote IDL type object.
+   */
+  public DefinitionKind def_kind()
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("_get_def_kind", true);
+        in = _invoke(out);
+        return DefinitionKindHelper.read(in);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+        throw new org.omg.CORBA.MARSHAL(ex.getId());
+      }
+    catch (RemarshalException rex)
+      {
+        return def_kind();
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /**
+   * Destroy the remote IDL type object.
+   */
+  public void destroy()
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("destroy", true);
+        in = _invoke(out);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+        throw new org.omg.CORBA.MARSHAL(ex.getId());
+      }
+    catch (RemarshalException rex)
+      {
+        destroy();
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /**
+   * Return the array of repository ids of the IDL type.
+   *
+   * @return "IDL:omg.org/CORBA/IDLType:1.0" and
+   *  "IDL:omg.org/CORBA/IRObject:1.0", always.
+   */
+  public String[] _ids()
+  {
+    return new String[]
+           {
+             "IDL:omg.org/CORBA/IDLType:1.0", "IDL:omg.org/CORBA/IRObject:1.0"
+           };
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/_PolicyStub.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/_PolicyStub.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/_PolicyStub.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/_PolicyStub.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,176 @@
+/* _PolicyStub.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA;
+
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.ObjectHelper;
+import org.omg.CORBA.portable.ApplicationException;
+import org.omg.CORBA.portable.Delegate;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.RemarshalException;
+
+import java.io.Serializable;
+
+/**
+ * The Policy stub (proxy), used on the client side.
+ * The {@link Policy} methods contain the code for remote
+ * invocaton.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class _PolicyStub
+  extends ObjectImpl
+  implements Policy, Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 2453656196708903849L;
+
+  /**
+   * Create the Policy stub. To get the stub working,
+   * you must later set the delegate with
+   * {@link ObjectImpl#_set_delegate(Delegate)}.
+   */
+  public _PolicyStub()
+  {
+  }
+
+  /**
+   * Create the naming context stub with the given delegate.
+   */
+  public _PolicyStub(Delegate delegate)
+  {
+    _set_delegate(delegate);
+  }
+
+  /**
+   * Return the array of repository ids for this object.
+   */
+  public String[] _ids()
+  {
+    return new String[] { PolicyHelper.id() };
+  }
+
+  /** {@inheritDoc} */
+  public void destroy()
+  {
+    InputStream input = null;
+    try
+      {
+        OutputStream output = _request("destroy", true);
+        input = _invoke(output);
+      }
+    catch (ApplicationException ex)
+      {
+        input = ex.getInputStream();
+
+        String id = ex.getId();
+        throw new MARSHAL(id);
+      }
+    catch (RemarshalException remarsh)
+      {
+        destroy();
+      }
+    finally
+      {
+        _releaseReply(input);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public Policy copy()
+  {
+    InputStream input = null;
+    try
+      {
+        OutputStream output = _request("copy", true);
+        input = _invoke(output);
+        return PolicyHelper.read(input);
+      }
+    catch (ApplicationException ex)
+      {
+        input = ex.getInputStream();
+
+        String id = ex.getId();
+        throw new MARSHAL(id);
+      }
+    catch (RemarshalException remarsh)
+      {
+        return copy();
+      }
+    finally
+      {
+        _releaseReply(input);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public int policy_type()
+  {
+    InputStream input = null;
+    try
+      {
+        OutputStream output = _request("policy_type", true);
+        input = _invoke(output);
+
+        int returns = input.read_long();
+
+        return returns;
+      }
+    catch (ApplicationException ex)
+      {
+        input = ex.getInputStream();
+
+        String id = ex.getId();
+        throw new MARSHAL(id);
+      }
+    catch (RemarshalException remarsh)
+      {
+        return policy_type();
+      }
+    finally
+      {
+        _releaseReply(input);
+      }
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/package.html
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/package.html?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/package.html (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/package.html Thu Nov  8 16:56:19 2007
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath - org.omg.CORBA</title></head>
+
+<body>
+This package provides the support of <a href="http://www.CORBA.org">CORBA</a>;
+see <a href="#overview">overview</a> of the implemented functionality. 
+<p>
+CORBA a system that applications use to work over networks. CORBA messages 
+are binary, not text oriented. They practically cary no "data wrapping" 
+information like XML <opening> </closing> tags. Hence CORBA 
+objects easier exchange large amounts of binary data. CORBA can work
+in such data-intensive application areas as telecommunications or radio
+broadcasting. Java programs connect to CORBA objects without care
+about what platform they run on, where they exist in the network, or what 
+language they were written in. The remote CORBA objects appear to the 
+programmer as the ordinary Java objects and can be passed as
+parameters in both remote or local method invocations. 
+</p><p>
+The CORBA processing unit is divided into {@link org.omg.CORBA.Object}
+that is exposed to the client and the servant 
+({@link org.omg.PortableServer.Servant} where the method, invoked on 
+object, is finally delegated. It can be multiple objects per servant or
+multiple servants per object. The servant for particular object or
+even particular call can be dynamically chosen at run time using
+{@link org.omg.PortableServer.ServantManager}.
+</p><p>
+All stages of both local and remote invocations on CORBA objects can be
+monitored and modified using {@link org.omg.PortableInterceptor.Interceptor}.
+The interceptors can add an extra data to the CORBA message (these data
+can be later accessed by other interceptor on remote side).
+</p>
+<a name="overview">
+<h4>Overview of the currently implemented CORBA functionality</h4>
+The CORBA implementation in the Classpath project is now a working
+prototype. 
+<ul>
+<li>This prototype is interoperable with Sun's implementation v 1.4, 
+transferring object references, primitive types, narrow and wide strings,
+arrays, structures  and trees between these two platforms.
+</li>
+<li>The prototype provides interoperable support for the Abstract interface
+ and Value types. Those appear in 1.3, being a feature of CORBA 2.3.
+</li>
+<li>The remote exceptions are also transferred and handled as expected.
+</li>
+<li>The support for parsing stringified object references (IORs), both 
+Big and Little Endian encoded, is implemented.
+</li>
+<li>The redirection commands works, LOCATION_FORWARD_PERM changing the 
+target address until the application is restarted and LOCATION_FORWARD 
+redirecting for the current session only.
+</li>
+<li>Both Little and Big Endian encoded messages are accepted. The encoding
+of the sent messages is the same as used in the stringified IOR reference
+of that object or Big Endian, if no such data available.
+</li>
+<li>You can use both request-oriented (based on {@link org.omg.CORBA.Request}
+and stream-oriented (based on {@link org.omg.CORBA.portable.ObjectImpl}
+invocation models. The current release includes the working examples,
+demonstrating the client-server communication using both methods.
+</li>
+<li>These examples also show,  how to use the Classpath naming service.
+</li>
+<li>The IDL compiler is not yet written (and not even started), but as a
+ side effect of the required compatibility, the implementation seems 
+accepting the output of the Sun's idlj.
+</li>
+<li>The Portable Object Adapter is already released. For details on POA,
+see the {@link org.omg.PortableServer} package.</li>
+<li>We provide the implementation of the {@link org.omg.DynamicAny}
+package. ORB returns the working DynAnyFactory that produces working
+DynAny's as defined in OMG specification.</li>
+<li>The Portable Interceptor is also complete. See 
+{@link org.omg.PortableInterceptor} package for details how to register 
+and use CORBA interceptors.
+<li>All GNU Classpath classes in omg.org namespace are newly written using
+ the OMG .pdf document (Version 3.0.3, formal/04-03-12).
+</li>
+</ul>
+ 
+ @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+</body>
+</html>
+

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ApplicationException.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ApplicationException.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ApplicationException.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ApplicationException.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* ApplicationException.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import java.io.Serializable;
+
+/**
+ * This expection is thrown if the application throws an exception,
+ * defined as a part of its remote method definition.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public class ApplicationException
+  extends Exception
+  implements Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -2088103024111528125L;
+
+  /**
+   * The input from where the exception parameters can be read.
+   */
+  private final org.omg.CORBA.portable.InputStream m_input;
+
+  /**
+   * The CORBA repository Id of the exception.
+   */
+  private final String m_id;
+
+  /**
+   * Creates an exception.
+   *
+   * @param id the CORBA repository Id of the exception.
+   * @param input the input from where the exception parameters can be read.
+   */
+  public ApplicationException(String id,
+                              org.omg.CORBA.portable.InputStream input
+                             )
+  {
+    m_id = id;
+    m_input = input;
+  }
+
+  /**
+   * Get the CORBA repository Id of the exception.
+   */
+  public String getId()
+  {
+    return m_id;
+  }
+
+  /**
+   * Get the input stream from where the exception parameters can be read.
+   */
+  public org.omg.CORBA.portable.InputStream getInputStream()
+  {
+    return m_input;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ApplicationException.jbx
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ApplicationException.jbx?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ApplicationException.jbx (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ApplicationException.jbx Thu Nov  8 16:56:19 2007
@@ -0,0 +1,6 @@
+[PropertyInfo]
+[IconNames]
+
+
+
+

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/BoxedValueHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/BoxedValueHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/BoxedValueHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/BoxedValueHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,79 @@
+/* BoxedValueHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import java.io.Serializable;
+
+/**
+ * Provides a helper operations for the boxed value type.
+ * A boxed value type is a value type with no inheritance, no methods
+ * and with a single state member. No additional properties can
+ * be defined. It is an error to box value types.
+ *
+ * The value type may have its own helper, implementing
+ * this interface.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface BoxedValueHelper
+{
+  /**
+   * Get the repository id of this value type.
+   *
+   * @return a repository id.
+   */
+  String get_id();
+
+  /**
+   * Read this value type from the CDR stream.
+   *
+   * @param is a stream to read from.
+   *
+   * @return a loaded value type.
+   */
+  Serializable read_value(InputStream istream);
+
+  /**
+   * Write this value type to the CDR stream.
+   *
+   * @param os a stream to write to.
+   * @param value a value to write.
+   */
+  void write_value(OutputStream ostream, Serializable value);
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/CustomValue.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/CustomValue.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/CustomValue.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/CustomValue.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,57 @@
+/* CustomValue.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import org.omg.CORBA.CustomMarshal;
+
+/**
+ * If the value type provides the user defined methods for reading
+ * and writing its content, it must implement this interface for reading
+ * and writing the content in a user-defined default way. This is done by
+ * implementing the {@link CustomMarshal#marshal} and
+ * {@link CustomMarshal#unmarshal}. The user must provide the supporting code.
+ *
+ * @see StreamableValue for specifying the IDL compiler generated IO methods.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface CustomValue
+  extends ValueBase, CustomMarshal
+{
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/Delegate.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/Delegate.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/Delegate.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/Delegate.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,433 @@
+/* Delegate.java --
+Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.Context;
+import org.omg.CORBA.ContextList;
+import org.omg.CORBA.DomainManager;
+import org.omg.CORBA.ExceptionList;
+import org.omg.CORBA.NO_IMPLEMENT;
+import org.omg.CORBA.NVList;
+import org.omg.CORBA.NamedValue;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Policy;
+import org.omg.CORBA.Request;
+import org.omg.CORBA.SetOverrideType;
+
+/**
+ * Specifies a vendor specific implementation of the
+ * {@link org.omg.CORBA.Object} methods. The calls to these
+ * methods are forwarded to the object delegate that can be
+ * replaced, if needed. The first parameter is the actual
+ * CORBA object to that the operation must be applied.
+ *
+ * Some methods in this class are not abstract, but no implemented,
+ * thowing the {@link NO_IMPLEMENT}. This, however, does not mean that
+ * they are not implemented in the derived classes as well.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class Delegate
+{
+  /**
+   * Explains the reason of throwing the NO_IMPLEMENT.
+   */
+  private static final String WHY =
+    "Following 1.4 API, this Delegate method must not be implemented. Override.";
+
+  /**
+   * Create a request to invoke the method of this object.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param context a list of additional properties.
+   * @param operation the name of method to be invoked.
+   * @param parameters the method parameters.
+   * @param returns the container for tge method returned value.
+   *
+   * @return the created reaquest.
+   */
+  public abstract Request create_request(org.omg.CORBA.Object target,
+                                         Context context, String operation,
+                                         NVList parameters, NamedValue returns
+                                        );
+
+  /**
+   * Create a request to invoke the method of this object, specifying
+   * context list and the list of the expected exception.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param context a list of additional properties.
+   * @param operation the name of method to be invoked.
+   * @param parameters the method parameters.
+   * @param returns the container for tge method returned value.
+   * @param exceptions the list of the possible exceptions that the method
+   * can throw.
+   * @param ctx_list the list of the context strings that need to be
+   * resolved and send as a context instance.
+   *
+   * @return the created reaquest.
+   */
+  public abstract Request create_request(org.omg.CORBA.Object target,
+                                         Context context, String operation,
+                                         NVList parameters, NamedValue returns,
+                                         ExceptionList exceptions,
+                                         ContextList ctx_list
+                                        );
+
+  /**
+   * Duplicate the object reference. This does not make much sense for
+   * java platform and is just included for the sake of compliance with
+   * CORBA APIs.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   *
+   * The method may return the object reference itself.
+   *
+   * @return as a rule, <code>this</code>.
+   */
+  public abstract org.omg.CORBA.Object duplicate(org.omg.CORBA.Object target);
+
+  /**
+   * Retrieve the domain managers for this object.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   *
+   * @return the domain managers.
+   *
+   * @throws NO_IMPLEMENT, always (following the 1.4 specification).
+   */
+  public DomainManager[] get_domain_managers(org.omg.CORBA.Object target)
+  {
+    throw new NO_IMPLEMENT(WHY);
+  }
+
+  /**
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   *
+   * Get the <code>InterfaceDef</code> for this Object.
+   */
+  public abstract org.omg.CORBA.Object get_interface_def(org.omg.CORBA.Object target);
+
+  /**
+   * Returns the {@link Policy}, applying to this object.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param a_policy_type a type of policy to be obtained.
+   * @return a corresponding Policy object.
+   *
+   * @throws NO_IMPLEMENT, always (following the 1.4 specification).
+   */
+  public Policy get_policy(org.omg.CORBA.Object target, int a_policy_type)
+                    throws BAD_PARAM
+  {
+    throw new NO_IMPLEMENT(WHY);
+  }
+
+  /**
+   * Get the hashcode this object reference. The same hashcode still
+   * does not means that the references are the same. From the other
+   * side, two different references may still refer to the same CORBA
+   * object. The returned value must not change during the object
+   * lifetime.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param maximum the maximal value to return.
+   *
+   * @return the hashcode.
+   */
+  public abstract int hash(org.omg.CORBA.Object target, int maximum);
+
+  /**
+   * Check if this object can be referenced by the given repository id.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param repositoryIdentifer the repository id.
+   *
+   * @return true if the passed parameter is a repository id of this
+   * CORBA object.
+   */
+  public abstract boolean is_a(org.omg.CORBA.Object target,
+                               String repositoryIdentifer
+                              );
+
+  /**
+   * Return true if the other object references are equivalent, so far as
+   * it is possible to determine this easily.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param other the other object reference.
+   *
+   * @return true if both references refer the same object, false
+   * if they probably can refer different objects.
+   *
+   */
+  public abstract boolean is_equivalent(org.omg.CORBA.Object target,
+                                        org.omg.CORBA.Object other
+                                       );
+
+  /**
+   * Returns true if the object is local.
+   *
+   * @param self the object to check.
+   *
+   * @return false, always (following 1.4 specs). Override to get
+   * functionality.
+   */
+  public boolean is_local(org.omg.CORBA.Object self)
+  {
+    return false;
+  }
+
+  /**
+   * Determines if the server object for this reference has already
+   * been destroyed.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   *
+   * @return true if the object has been destroyed, false otherwise.
+   */
+  public abstract boolean non_existent(org.omg.CORBA.Object target);
+
+  /**
+   * Compares two objects for equality. The default implementations
+   * delegated call to {@link java.lang.Object#equals(java.lang.Object)}.
+   *
+   * @param self this CORBA object.
+   * @param other the other CORBA object.
+   *
+   * @return true if the objects are equal.
+   */
+  public boolean equals(org.omg.CORBA.Object self, java.lang.Object other)
+  {
+    return self==other;
+  }
+
+  /**
+   * Return the hashcode for this CORBA object. The default implementation
+   * delegates call to {@link #hash(int)}, passing Integer.MAX_VALUE as an
+   * argument.
+   *
+   * @param target the object, for that the hash code must be computed.
+   *
+   * @return the hashcode.
+   */
+  public int hashCode(org.omg.CORBA.Object target)
+  {
+    return hash(target, Integer.MAX_VALUE);
+  }
+
+  /**
+   * Invoke the operation.
+   *
+   * @param target the invocation target.
+   * @param output the stream, containing the written arguments.
+   *
+   * @return the stream, from where the input parameters could be read.
+   *
+   * @throws ApplicationException if the application throws an exception,
+   * defined as a part of its remote method definition.
+   *
+   * @throws RemarshalException if reading(remarshalling) fails.
+   *
+   * @throws NO_IMPLEMENT, always (following the 1.4 specification).
+   */
+  public InputStream invoke(org.omg.CORBA.Object target,
+                            org.omg.CORBA.portable.OutputStream output
+                           )
+                     throws ApplicationException, RemarshalException
+  {
+    throw new NO_IMPLEMENT(WHY);
+  }
+
+  /**
+   * Provides the reference to ORB.
+   *
+   * @param target the object reference.
+   *
+   * @return the associated ORB.
+   *
+   * @throws NO_IMPLEMENT, always (following the 1.4 specification).
+   */
+  public ORB orb(org.omg.CORBA.Object target)
+  {
+    throw new NO_IMPLEMENT(WHY);
+  }
+
+  /**
+   * Free resoureces, occupied by this reference. The object implementation
+   * is not notified, and the other references to the same object are not
+   * affected.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   */
+  public abstract void release(org.omg.CORBA.Object target);
+
+  /**
+   * Release the reply stream back to ORB after finishing reading the data
+   * from it.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param input the stream, normally returned by {@link #invoke} or
+   * {@link ApplicationException#getInputStream()}, can be null.
+   *
+   * The default method returns without action.
+   */
+  public void releaseReply(org.omg.CORBA.Object target,
+                           org.omg.CORBA.portable.InputStream input
+                          )
+  {
+  }
+
+  /**
+   * Create a request to invoke the method of this CORBA object.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param operation the name of the method to invoke.
+   *
+   * @return the request.
+   */
+  public abstract Request request(org.omg.CORBA.Object target, String operation);
+
+  /**
+   * Create a request to invoke the method of this CORBA object.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param operation the name of the method to invoke.
+   * @param response_expected specifies if this is one way message or the
+   * response to the message is expected.
+   *
+   * @return the stream where the method arguments should be written.
+   */
+  public org.omg.CORBA.portable.OutputStream request(org.omg.CORBA.Object target,
+                                                     String operation,
+                                                     boolean response_expected
+                                                    )
+  {
+    throw new NO_IMPLEMENT(WHY);
+  }
+
+  /**
+   * This method is always called after invoking the operation on the
+   * local servant.
+   *
+   * The default method returns without action.
+   *
+   * @param self the object.
+   * @param servant the servant.
+   */
+  public void servant_postinvoke(org.omg.CORBA.Object self,
+                                 ServantObject servant
+                                )
+  {
+  }
+
+  /**
+   * Returns a servant that should be used for this request.
+   * The servant can also be casted to the expected type, calling the
+   * required method directly.
+   *
+   * @param self the object
+   * @param operation the operation
+   * @param expectedType the expected type of the servant.
+   *
+   * This implementation always returns null; override for different
+   * behavior.
+   *
+   * @return the servant or null if the servant is not an expected type
+   * of the method is not supported, for example, due security reasons.
+   */
+  public ServantObject servant_preinvoke(org.omg.CORBA.Object self,
+                                         String operation, Class expectedType
+                                        )
+  {
+    return null;
+  }
+
+  /**
+   * Returns a new object with the new policies either replacing or
+   * extending the current policies, depending on the second parameter.
+   *
+   * @param target the CORBA object, to that this operation must be applied.
+   * @param policies the policy additions or replacements.
+   * @param how either {@link SetOverrideType#SET_OVERRIDE} to override the
+   * current policies of {@link SetOverrideType#ADD_OVERRIDE} to replace
+   * them.
+   *
+   * @throws NO_IMPLEMENT, always (following the 1.4 specification).
+   *
+   * @return the new reference with the changed policies.
+   */
+  public org.omg.CORBA.Object set_policy_override(org.omg.CORBA.Object target,
+                                                  Policy[] policies,
+                                                  SetOverrideType how
+                                                 )
+  {
+    throw new NO_IMPLEMENT(WHY);
+  }
+
+  /**
+   * Return a string representation of the passed object.
+   *
+   * @param self the CORBA object, to that the string representation must be
+   * returned. By default, the call is delegated to
+   * {@link java.lang.Object.toString()}.
+   *
+   * @return the string representation.
+   */
+  public String toString(org.omg.CORBA.Object self)
+  {
+    if (self instanceof ObjectImpl)
+      {
+        ObjectImpl x = (ObjectImpl) self;
+        StringBuffer b = new StringBuffer(x.getClass().getName());
+        b.append(": [");
+        for (int i = 0; i < x._ids().length; i++)
+          {
+            b.append(x._ids() [ i ]);
+            b.append(" ");
+          }
+        b.append("]");
+        return b.toString();
+      }
+    else
+      return self.getClass().getName();
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/IDLEntity.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/IDLEntity.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/IDLEntity.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/IDLEntity.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,50 @@
+/* IDLEntity.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import java.io.Serializable;
+
+/**
+ * Indicates that this class has a corresponding Helper class.
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface IDLEntity
+  extends Serializable
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/IndirectionException.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/IndirectionException.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/IndirectionException.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/IndirectionException.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,77 @@
+/* IndirectionException.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.CompletionStatus;
+import org.omg.CORBA.SystemException;
+
+/**
+ * This exception is thrown when reading from the ORBs input streams
+ * certain specific data layouts (object recursive references to itself).
+ * These layouts are not supported by this CORBA implementation.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public class IndirectionException
+  extends SystemException
+  implements Serializable
+{
+  /**
+   * Use v 1.4 serialVersionUID for interoperability.
+   */
+  private static final long serialVersionUID = -1923858944380721643L;
+
+  /**
+   * The stream offset, indicating, where the error has occured.
+   */
+  public int offset;
+
+  /**
+   * Create the indirection exception.
+   *
+   * @param an_offset the stream offset, indicating the error position.
+   */
+  public IndirectionException(int an_offset)
+  {
+    super("Indirection exception", 0, CompletionStatus.COMPLETED_NO);
+    offset = an_offset;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/InputStream.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/InputStream.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/InputStream.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/InputStream.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,286 @@
+/* InputStream.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import java.math.BigDecimal;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.Context;
+import org.omg.CORBA.NO_IMPLEMENT;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Object;
+import org.omg.CORBA.Principal;
+import org.omg.CORBA.TypeCode;
+
+/**
+ * This class is used to read CORBA IDL data types.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class InputStream
+  extends java.io.InputStream
+{
+  /**
+   * Return the Object Request Broker that has created this stream.
+   * @return the ORB. This must be overridden, as the default
+   * method always returns null.
+   */
+  public ORB orb()
+  {
+    return null;
+  }
+
+  /**
+   * This should read the CORBA context, but following the 1.4 API
+   * specification, it must not be implemented.
+   *
+   * @throws NO_IMPLEMENT, always.
+   */
+  public Context read_Context()
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * Read a CORBA (not java) object
+   * @return an object.
+   */
+  public abstract org.omg.CORBA.Object read_Object();
+
+  /**
+   * Read a CORBA <code>char</code>.
+   * @return a value, corresponding the value of the CORBA <code>char</code>.
+   */
+  public abstract char read_char();
+
+  /**
+   * Read a CORBA <code>double</code>.
+   * @return a value, corresponding the value of the CORBA <code>double</code>.
+   */
+  public abstract double read_double();
+
+  /**
+   * Read a CORBA <code>float</code>.
+   * @return a value, corresponding the value of the CORBA <code>float</code>.
+   */
+  public abstract float read_float();
+
+  /**
+   * Read a and array of CORBA float.
+   */
+  public abstract void read_float_array(float[] value, int offset, int length);
+
+  /**
+   * Read a CORBA <code>long</code> that is mapped into java <code>int</code>.
+   * @return an integer, corresponding the CORBA <code>long</code>.
+   */
+  public abstract int read_long();
+
+  /**
+   * Read a CORBA <code>long long</code> that is mapped into java <code>
+   * long</code>.
+   * @return a value, corresponding the CORBA <code>long long</code>
+   */
+  public abstract long read_longlong();
+
+  /**
+   * Read an array of CORBA <code>long long</code>
+   */
+  public abstract void read_longlong_array(long[] value, int offset, int length);
+
+  /**
+   * Read a CORBA <code>octed</code> that is mapped into java <code>byte</code>.
+   * @return a byte, corresponding the CORBA <code>octet</code>.
+   */
+  public abstract byte read_octet();
+
+  /**
+   * Read a and array of CORBA octets that are mapped into java array of
+   * bytes.
+   */
+  public abstract void read_octet_array(byte[] value, int offset, int length);
+
+  /**
+   * Read a CORBA <code>short</code>.
+   * @return a value, corresponding the value of the CORBA <code>short</code>.
+   */
+  public abstract short read_short();
+
+  public abstract void read_short_array(short[] value, int offset, int length);
+
+  /**
+   * Read a CORBA unsigned long that is mapped into java <code>int</code>.
+   * @return an integer, matching the CORBA unsigned <code>long</code>.
+   */
+  public abstract int read_ulong();
+
+  /**
+   * Read an array of CORBA unsigned long.
+   */
+  public abstract void read_ulong_array(int[] value, int offset, int length);
+
+  /**
+   * Should read from the stream, but following specification it does not.
+   * @throws java.io.IOException
+   * @throws NO_IMPLEMENT, always.
+   */
+  public int read()
+           throws java.io.IOException
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * Read a TypeCode.
+   * @return a TypeCode.
+   */
+  public abstract TypeCode read_TypeCode();
+
+  /**
+   * Read a CORBA <code>boolean</code>.
+   * @return a value, corresponding the value of the CORBA <code>boolean</code>.
+   */
+  public abstract boolean read_boolean();
+
+  /**
+   * Read a and array of CORBA boolean values.
+   */
+  public abstract void read_boolean_array(boolean[] value, int offset,
+                                          int length
+                                         );
+
+  /**
+   * Read a and array of CORBA characters.
+   */
+  public abstract void read_char_array(char[] value, int offset, int length);
+
+  /**
+   * Read a and array of CORBA doubles.
+   */
+  public abstract void read_double_array(double[] value, int offset, int length);
+
+  /**
+   * Read a and array of CORBA longs.
+   */
+  public abstract void read_long_array(int[] value, int offset, int length);
+
+  /**
+   * Read a CORBA <code>string</code> that is mapped into java
+   * <code>String</code>.
+   * @return a value, corresponding the value of the CORBA
+   * <code>string</code>.
+   */
+  public abstract String read_string();
+
+  /**
+   * Read a and array of CORBA unsigned longs.
+   */
+  public abstract long read_ulonglong();
+
+  /**
+   * Read a and array of CORBA unsigned longs.
+   */
+  public abstract void read_ulonglong_array(long[] value, int offset, int length);
+
+  /**
+   * Read a CORBA unsigned short that is mapped into java <code>short</code>.
+   * @return a value of the CORBA unsigned <code>short</code>.
+   */
+  public abstract short read_ushort();
+
+  /**
+   * Read a and array of CORBA unsigned shorts.
+   */
+  public abstract void read_ushort_array(short[] value, int offset, int length);
+
+  /**
+   * Read a CORBA object that is an instance of the class, passed
+   * as an argument. This method is not abstract, but following the
+   * specifications it must not be implemented.
+   *
+   * @param klass a CORBA class
+   * @throws NO_IMPLEMENT, always.
+   */
+  public Object read_Object(Class klass)
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * Read a CORBA <code>Any</code>.
+   * @return an <code>Any</code>.
+   */
+  public abstract Any read_any();
+
+  /**
+   * Read a CORBA <code>fixed</code>. This method is not abstract,
+   * but following the specifications it must not be implemented.
+   *
+   * @throws NO_IMPLEMENT, always.
+   */
+  public BigDecimal read_fixed()
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * Read a CORBA <code>wchar</code> that is mapped into java <code>char</code>.
+   * @return a value, corresponding the value of the CORBA <code>wchar</code>.
+   */
+  public abstract char read_wchar();
+
+  public abstract void read_wchar_array(char[] value, int offset, int length);
+
+  /**
+   * Read a CORBA <code>wstring</code> that is mapped into
+   * java <code>String</code>.
+   * @return a string, corresponding CORBA <code>wstring</code>.
+   */
+  public abstract String read_wstring();
+
+  /**
+   * Read a CORBA <code>Principal</code>.
+   * @deprecated by CORBA 2.2
+   * @return a Principal.
+   */
+  public Principal read_Principal()
+  {
+    throw new NO_IMPLEMENT();
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/InvokeHandler.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/InvokeHandler.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/InvokeHandler.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/InvokeHandler.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,66 @@
+/* InvokeHandler.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import org.omg.CORBA.SystemException;
+
+/**
+ * Provides the dispatching mechanism for incoming call.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface InvokeHandler
+{
+  /**
+   * Invoke the object method.
+   *
+   * @param method the name of the method to invoke.
+   * @param input the input stream to read parameters from.
+   * @param handler the response handler, used for creating the reply.
+   *
+   * @return the output stream, returned by {@link ResponseHandler}.
+   * The response values are already written to that stream.
+   *
+   * @throws SystemException if invocation has failed due CORBA system exception.
+   */
+  OutputStream _invoke(String method, org.omg.CORBA.portable.InputStream input,
+                       ResponseHandler handler
+                      )
+                throws SystemException;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ObjectImpl.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ObjectImpl.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ObjectImpl.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ObjectImpl.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,405 @@
+/* ObjectImpl.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import org.omg.CORBA.Context;
+import org.omg.CORBA.ContextList;
+import org.omg.CORBA.DomainManager;
+import org.omg.CORBA.ExceptionList;
+import org.omg.CORBA.NVList;
+import org.omg.CORBA.NamedValue;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Policy;
+import org.omg.CORBA.Request;
+import org.omg.CORBA.SetOverrideType;
+
+/**
+ * The basic implementation of the CORBA Object. The most of the methods
+ * delegate the functionality to the {@link Delegate} that can be replaced
+ * by {@link #_set_delegate(Delegate)}.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class ObjectImpl
+  implements org.omg.CORBA.Object
+{
+  /**
+   * The delegate, responsible for the method implementations.
+   */
+  transient Delegate delegate;
+
+  /**
+    * Create a request to invoke the method of this object, specifying
+    * context list and the list of the expected exception.
+    *
+    * @param context a list of additional properties.
+    * @param operation the name of method to be invoked.
+    * @param parameters the method parameters.
+    * @param returns the container for tge method returned value.
+    * @param exceptions the list of the possible exceptions that the method
+    * can throw.
+    * @param ctx_list the list of the context strings that need to be
+    * resolved and send as a context instance.
+    *
+    * @return the created reaquest.
+    */
+  public Request _create_request(Context context, String operation,
+                                 NVList parameters, NamedValue returns,
+                                 ExceptionList exceptions, ContextList ctx_list
+                                )
+  {
+    return delegate.create_request(this, context, operation, parameters,
+                                   returns, exceptions, ctx_list
+                                  );
+  }
+
+  /**
+   * Create a request to invoke the method of this object.
+   *
+   * @param context a list of additional properties.
+   * @param operation the name of method to be invoked.
+   * @param parameters the method parameters.
+   * @param returns the container for tge method returned value.
+   *
+   * @return the created reaquest.
+   */
+  public Request _create_request(Context context, String operation,
+                                 NVList parameters, NamedValue returns
+                                )
+  {
+    return delegate.create_request(this, context, operation, parameters, returns);
+  }
+
+  /**
+   * Duplicate the object reference. This does not make much sense for
+   * java platform and is just included for the sake of compliance with
+   * CORBA APIs.
+   *
+   * The method may return the object reference itself.
+   *
+   * @return as a rule, <code>this</code>.
+   */
+  public org.omg.CORBA.Object _duplicate()
+  {
+    return delegate.duplicate(this);
+  }
+
+  /**
+   * Get vendor specific delegate, responsible for the implemented
+   * functionality.
+   */
+  public Delegate _get_delegate()
+  {
+    return delegate;
+  }
+
+  /**
+   * Retrieve the domain managers for this object.
+   *
+   * @return the domain managers.
+   */
+  public DomainManager[] _get_domain_managers()
+  {
+    return delegate.get_domain_managers(this);
+  }
+
+  /**
+   * Get the <code>InterfaceDef</code> for this Object.
+   */
+  public org.omg.CORBA.Object _get_interface_def()
+  {
+    return delegate.get_interface_def(this);
+  }
+
+  /**
+   * Returns the {@link Policy}, applying to this object.
+   *
+   * @param a_policy_type a type of policy to be obtained.
+   * @return a corresponding Policy object.
+   *
+   * @throws BAD_PARAM if the policy of the given type is not
+   * associated with this object, or if it is not supported by this ORB.
+   */
+  public Policy _get_policy(int type)
+  {
+    return delegate.get_policy(this, type);
+  }
+
+  /**
+   * Get the array of interface repository ids, defining this object.
+   */
+  public abstract String[] _ids();
+
+  /**
+   * Get the hashcode this object reference. The same hashcode still
+   * does not means that the references are the same. From the other
+   * side, two different references may still refer to the same CORBA
+   * object. The returned value must not change during the object
+   * lifetime.
+   *
+   * @param maximum the maximal value to return.
+   *
+   * @return the hashcode.
+   */
+  public int _hash(int max)
+  {
+    return delegate.hash(this, max);
+  }
+
+  /**
+   * Invoke the operation.
+   *
+   * @param output the stream, containing the written arguments.
+   *
+   * @return the stream, from where the input parameters could be read.
+   *
+   * @throws ApplicationException if the application throws an exception,
+   * defined as a part of its remote method definition.
+   *
+   * @throws RemarshalException if reading(remarshalling) fails.
+   */
+  public InputStream _invoke(OutputStream output)
+                      throws org.omg.CORBA.portable.ApplicationException,
+                             org.omg.CORBA.portable.RemarshalException
+  {
+    return delegate.invoke(this, output);
+  }
+
+  /**
+   * Check if this object can be referenced by the given repository id.
+   *
+   * @param repositoryIdentifer the repository id.
+   *
+   * @return true if the passed parameter is a repository id of this
+   * CORBA object.
+   */
+  public boolean _is_a(String idl_id)
+  {
+    return delegate.is_a(this, idl_id);
+  }
+
+  /**
+   * Return true if the other object references are equivalent, so far as
+   * it is possible to determine this easily.
+   *
+   * @param other the other object reference.
+   *
+   * @return true if both references refer the same object, false
+   * if they probably can refer different objects. Uses direct
+   * comparison if the delegate has not been set.
+   */
+  public boolean _is_equivalent(org.omg.CORBA.Object other)
+  {
+    return (delegate == null) ? this == other
+           : delegate.is_equivalent(this, other);
+  }
+
+  /**
+   * Returns true if the object is local.
+   *
+   * @param self the object to check.
+   *
+   * @return false, always (following 1.4 specs). Override to get
+   * functionality.
+   */
+  public boolean _is_local()
+  {
+    return delegate.is_local(this);
+  }
+
+  /**
+  * Determines if the server object for this reference has already
+  * been destroyed.
+  *
+  * @return true if the object has been destroyed, false otherwise.
+  */
+  public boolean _non_existent()
+  {
+    return delegate.non_existent(this);
+  }
+
+  /**
+   * Provides the reference to ORB.
+   *
+   * @return the associated ORB.
+   */
+  public ORB _orb()
+  {
+    return delegate.orb(this);
+  }
+
+  /**
+   * Free resoureces, occupied by this reference. The object implementation
+   * is not notified, and the other references to the same object are not
+   * affected.
+   */
+  public void _release()
+  {
+    delegate.release(this);
+  }
+
+  /**
+   * Release the reply stream back to ORB after finishing reading the data
+   * from it.
+   *
+   * @param input the stream, normally returned by {@link #invoke} or
+   * {@link ApplicationException#getInputStream()}, can be null.
+   *
+   * @throws NO_IMPLEMENT, always (following the 1.4 specification).
+   */
+  public void _releaseReply(InputStream stream)
+  {
+    if (delegate != null)
+      delegate.releaseReply(this, stream);
+  }
+
+  /**
+   * Create a request to invoke the method of this CORBA object.
+   *
+   * @param operation the name of the method to invoke.
+   *
+   * @return the request.
+   */
+  public Request _request(String method)
+  {
+    return delegate.request(this, method);
+  }
+
+  /**
+   * Create a request to invoke the method of this CORBA object.
+   *
+   * @param operation the name of the method to invoke.
+   * @param response_expected specifies if this is one way message or the
+   * response to the message is expected.
+   *
+   * @return the stream where the method arguments should be written.
+   */
+  public org.omg.CORBA.portable.OutputStream _request(String method,
+                                                      boolean response_expected
+                                                     )
+  {
+    return delegate.request(this, method, response_expected);
+  }
+
+  /**
+   * This method is always called after invoking the operation on the
+   * local servant.
+   *
+   * The default method returns without action.
+   *
+   * @param self the object.
+   * @param servant the servant.
+   */
+  public void _servant_postinvoke(ServantObject servant)
+  {
+    delegate.servant_postinvoke(this, servant);
+  }
+
+  /**
+   * Returns a servant that should be used for this request.
+   * The servant can also be casted to the expected type, calling the
+   * required method directly.
+   *
+   * @param self the object
+   * @param operation the operation
+   * @param expectedType the expected type of the servant.
+   *
+   * This implementation always returns null; override for different
+   * behavior.
+   *
+   * @return the servant or null if the servant is not an expected type
+   * of the method is not supported, for example, due security reasons.
+   */
+  public ServantObject _servant_preinvoke(String method, Class expected_type)
+  {
+    return delegate.servant_preinvoke(this, method, expected_type);
+  }
+
+  /**
+   * Set the delegate, responsible for the implemented functionality.
+   *
+   * @param a_delegate a delegate, responsible for the implemented
+   * functionality.
+   */
+  public void _set_delegate(Delegate a_delegate)
+  {
+    delegate = a_delegate;
+  }
+
+  /**
+   * Returns a new object with the new policies either replacing or
+   * extending the current policies, depending on the second parameter.
+   *
+   * @param policies the policy additions or replacements.
+   * @param how either {@link SetOverrideType#SET_OVERRIDE} to override the
+   * current policies of {@link SetOverrideType#ADD_OVERRIDE} to replace
+   * them.
+   */
+  public org.omg.CORBA.Object _set_policy_override(Policy[] policies,
+                                                   SetOverrideType set_add
+                                                  )
+  {
+    return delegate.set_policy_override(this, policies, set_add);
+  }
+
+  /**
+   * Check if this object is equal to another object.
+   *
+   * @param other the other object to compare.
+   *
+   * @return true if the objects are equal.
+   */
+  public boolean equals(java.lang.Object other)
+  {
+    if (delegate == null)
+      return this == other;
+    else
+      return delegate.equals(this, other);
+  }
+
+  /**
+   * Return the string representation of the passed object.
+   *
+   * @return the string representation.
+   */
+  public String toString()
+  {
+    return delegate.toString(this);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/OutputStream.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/OutputStream.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/OutputStream.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/OutputStream.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,283 @@
+/* OutputStream.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.Context;
+import org.omg.CORBA.ContextList;
+import org.omg.CORBA.NO_IMPLEMENT;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Principal;
+import org.omg.CORBA.TypeCode;
+
+import java.io.IOException;
+
+import java.math.BigDecimal;
+
+/**
+ * This class is used to write CORBA IDL data types.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class OutputStream
+  extends java.io.OutputStream
+{
+  /**
+   * Returns an input stream with the same buffer.
+   * @return an input stream
+   */
+  public abstract InputStream create_input_stream();
+
+  /**
+   * Return the Object Request Broker that has created this stream.
+   * @return the ORB. This must be overridden, as the default
+   * method always returns null.
+   */
+  public ORB orb()
+  {
+    return null;
+  }
+
+  /**
+   * Should write an byte (lower 8 bits) to the output stream, but,
+   * following specification, it does not and
+   * must be overridden to get a functionality.
+   *
+   * @param n an integer to write.
+   *
+   * @throws NO_IMPLEMENT, always.
+   * @throws IOException in overriden methods.
+   */
+  public void write(int n)
+             throws IOException
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * Should write a CORBA context to the output stream, but,
+   * following the 1.4 specification, it does not and
+   * must be overridden to get a functionality.
+   *
+   * @throws NO_IMPLEMENT, always.
+   */
+  public void write_Context(Context context, ContextList contexts)
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * Write CORBA (not java) Object.
+   */
+  public abstract void write_Object(org.omg.CORBA.Object x);
+
+  /**
+   * Should write a principal to the output stream, but,
+   * following specification, it does not and
+   * must be overridden to get a functionality.
+   *
+   * @deprecated by CORBA 2.2
+   *
+   * @param principal a Principal to write
+   *
+   * @throws NO_IMPLEMENT, always.
+   */
+  public void write_Principal(Principal principal)
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * Write TypeCode.
+   */
+  public abstract void write_TypeCode(TypeCode x);
+
+  /**
+   * Write CORBA <code>Any</code>.
+   */
+  public abstract void write_any(Any x);
+
+  /**
+   * Write CORBA <code>boolean</code>.
+   */
+  public abstract void write_boolean(boolean x);
+
+  /**
+   * Write CORBA <code>booelan[]</code>.
+   */
+  public abstract void write_boolean_array(boolean[] x, int ofs, int len);
+
+  /**
+   * Write CORBA <code>char</code>.
+   */
+  public abstract void write_char(char x);
+
+  /**
+   * Write CORBA <code>char[]</code>.
+   */
+  public abstract void write_char_array(char[] chars, int offset, int length);
+
+  /**
+   * Write CORBA <code>double</code>.
+   */
+  public abstract void write_double(double x);
+
+  /**
+   * Write CORBA <code>double[]</code>.
+   */
+  public abstract void write_double_array(double[] x, int ofs, int len);
+
+  /**
+   * Should write a BigDecimal number, but, following specification,
+   * it does not and must be overridden to get a functionality.
+   *
+   * @param fixed a number to write
+   * @throws NO_IMPLEMENT, always.
+   */
+  public void write_fixed(BigDecimal fixed)
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * Write CORBA <code>float</code>.
+   */
+  public abstract void write_float(float x);
+
+  /**
+   * Write CORBA <code>float[]</code>.
+   */
+  public abstract void write_float_array(float[] x, int ofs, int len);
+
+  /**
+  * Write CORBA <code>long</code> that is mapped into java <code>int</code>.
+  */
+  public abstract void write_long(int x);
+
+  /**
+   * Write CORBA <code>long[]</code>.
+   */
+  public abstract void write_long_array(int[] x, int ofs, int len);
+
+  /**
+   * Write CORBA <code>long long</code> that is mapped into
+   * java <code>long</code>.
+   */
+  public abstract void write_longlong(long x);
+
+  /**
+   * Write CORBA <code>long long []</code>.
+   */
+  public abstract void write_longlong_array(long[] x, int ofs, int len);
+
+  /**
+   * Write CORBA <code>octed</code> that is mapped into java <code>byte</code>
+   */
+  public abstract void write_octet(byte x);
+
+  /**
+   * Write CORBA <code>octet[]</code>.
+   */
+  public abstract void write_octet_array(byte[] x, int ofs, int len);
+
+  /**
+   * Write CORBA <code>short</code>.
+   */
+  public abstract void write_short(short x);
+
+  /**
+   * Write CORBA <code>short[]</code>.
+   */
+  public abstract void write_short_array(short[] x, int ofs, int len);
+
+  /**
+   * Write CORBA <code>string</code>.
+   */
+  public abstract void write_string(String x);
+
+  /**
+   * Write unsigned CORBA <code>long</code> that is mapped into
+   * java <code>int</code>.
+   */
+  public abstract void write_ulong(int x);
+
+  /**
+   * Write array of CORBA unsigned longs.
+   */
+  public abstract void write_ulong_array(int[] x, int ofs, int len);
+
+  /**
+   * Write unsigned CORBA <code>long long </code> that is mapped into
+   * java <code>long</code>.
+   */
+  public abstract void write_ulonglong(long x);
+
+  /**
+   * Write array of unsigned CORBA long-longs.
+   */
+  public abstract void write_ulonglong_array(long[] x, int ofs, int len);
+
+  /**
+   * Write unsigned CORBA <code>short</code> that is mapped into
+   * java <code>short</code>.
+   */
+  public abstract void write_ushort(short x);
+
+  /**
+   * Write array of unsigned CORBA shorts.
+   */
+  public abstract void write_ushort_array(short[] x, int ofs, int len);
+
+  /**
+   * Write CORBA <code>wchar</code> that is mapped into
+   * java <code>char</code>.
+   */
+  public abstract void write_wchar(char x);
+
+  /**
+   * Write array of CORBA wchars.
+   */
+  public abstract void write_wchar_array(char[] chars, int offset, int length);
+
+  /**
+   * Write CORBA <code>wstring</code> that is mapped into
+   * java <code>string</code>.
+   */
+  public abstract void write_wstring(String x);
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/RemarshalException.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/RemarshalException.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/RemarshalException.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/RemarshalException.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,59 @@
+/* RemarshalException.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import java.io.Serializable;
+
+/**
+ * This is exception is potentially thrown by the _invoke()
+ * method of the object implementation, requiring to write the method
+ * parameters repeatedly. The parameters must be re-written as long as this
+ * exception is thrown.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public final class RemarshalException
+  extends Exception
+  implements Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -7025491253080954918L;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ResponseHandler.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ResponseHandler.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ResponseHandler.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ResponseHandler.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,58 @@
+/* ResponseHandler.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+/**
+ * The interface, able to return streams, where the reply data can be
+ * marshalled.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface ResponseHandler
+{
+  /**
+   * Create a stream, suitable for writing a user exception.
+   */
+  org.omg.CORBA.portable.OutputStream createExceptionReply();
+
+  /**
+   * Create a stream for writing an ordinary reply (not an exception).
+   */
+  org.omg.CORBA.portable.OutputStream createReply();
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ServantObject.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ServantObject.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ServantObject.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ServantObject.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,61 @@
+/* ServantObject.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+
+/**
+ * Together with supporting methods in {@link ObjectImpl} and {@link Delegate},
+ * provides mechanism for direct calls of clients, running on the same
+ * virtual machine (collocated).
+ *
+ * @see ObjectImpl#_servant_preinvoke(String, Class)
+ * @see ObjectImpl#_servant_postinvoke(ServantObject)
+ * @see Delegate#servant_preinvoke(org.omg.CORBA.Object, String operation, Class)
+ * @see Delegate#servant_postinvoke(org.omg.CORBA.Object, ServantObject)
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public class ServantObject
+{
+  /**
+   * The real servant, that can be casted to the expected type, later
+   * invoking the methods directly.
+   */
+  public java.lang.Object servant;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/Streamable.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/Streamable.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/Streamable.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/Streamable.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,70 @@
+/* Streamable.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import org.omg.CORBA.TypeCode;
+
+/**
+ * The base class for the Holder classess of IDL types.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface Streamable
+{
+  /**
+   * Fill in the value field for this holder by reading the required data
+   * from the given stream.
+   *
+   * @param input the input stream to read from.
+   */
+  void _read(InputStream input);
+
+  /**
+   * Returns the TypeCode, corresponding the CORBA type that is stored
+   * using this holder.
+   */
+  TypeCode _type();
+
+  /**
+   * Write the value field to the given stream.
+   *
+   * @param output the output stream to write into.
+   */
+  void _write(OutputStream output);
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/StreamableValue.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/StreamableValue.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/StreamableValue.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/StreamableValue.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,57 @@
+/* StreamableValue.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import java.io.Serializable;
+
+/**
+ * If the value type does not provide the user defined methods for reading
+ * and writing its content, it must implement this interface for reading
+ * and writing the content in a default way. This is done by implementing
+ * the {@link Streamable#read} and {@link Streamable#write}. IDL compiler
+ * should generate the implementation of this interface automatically.
+ *
+ * @see CustomValue for specifying the user-defined io methods.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface StreamableValue
+  extends Streamable, Serializable, ValueBase, IDLEntity
+{
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/UnknownException.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/UnknownException.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/UnknownException.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/UnknownException.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,76 @@
+/* UnknownException.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.CompletionStatus;
+import org.omg.CORBA.SystemException;
+
+/**
+ * The wrapper of the arbitrary exception into the System exception.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public class UnknownException
+  extends SystemException
+  implements Serializable
+{
+  /**
+   * Use serialVersionUID (1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 1725238280802233450L;
+
+  /**
+   * The original exception.
+   */
+  public Throwable originalEx;
+
+  /**
+   * Create a new unknown exception, wrapping a reason.
+   *
+   * @param reason an exception that has caused this unknown exception.
+   */
+  public UnknownException(Throwable reason)
+  {
+    super("" + reason, 0, CompletionStatus.COMPLETED_MAYBE);
+
+    originalEx = reason;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ValueBase.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ValueBase.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ValueBase.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ValueBase.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,74 @@
+/* ValueBase.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+
+/**
+ * ValueBase is the basic interface for all CORBA value data types. A value
+ * type is something between CORBA structure and CORBA object. Like CORBA
+ * object, it can have methods, supporting some IDL-defined interface.
+ * However, like structures, they are local and passed by value,
+ * not by IOR reference.
+ *
+ * Unlike CORBA objects, values are not connected to any ORB by
+ * default; they hanlde the implemented functionality locally. The classes,
+ * required to implement that functionality, should either be pre-defined
+ * or they can be downloaded from the certain URL, defined as CodeBase.
+ *
+ * The value types can have both public and private members. They support
+ * inheritance. Value types can also be abstract.
+ *
+ * For transferring the value type data via stream, it must implement either
+ * {@link CustomValue} or {@link StreamableValue}.
+ *
+ * @since 1.3
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface ValueBase
+  extends IDLEntity
+{
+  /**
+   * Get the truncatable repository ids.
+   *
+   * @return the array of repository ids, defining the base types, to that
+   * basic types this value base can be truncated.
+   */
+  String[] _truncatable_ids();
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ValueFactory.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ValueFactory.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ValueFactory.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/ValueFactory.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,62 @@
+/* ValueFactory.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA.portable;
+
+import java.io.Serializable;
+
+/**
+ * An interface for reading an instance of the value type
+ * from the input stream.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public interface ValueFactory
+{
+  /**
+   * Read the value type. The method is responsible both
+   * for creating a new instance of the value type and
+   * reading the content of this nstance from the stream.
+   *
+   * @param from_stream a stream to read from.
+   *
+   * @return a created value type, intialised with the data from
+   * the stream.
+   */
+  Serializable read_value(org.omg.CORBA_2_3.portable.InputStream from_stream);
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/package.html
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/package.html?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/package.html (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA/portable/package.html Thu Nov  8 16:56:19 2007
@@ -0,0 +1,50 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html - describes classes in org.omg.CORBA.portable package
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath - org.omg.CORBA.portable</title></head>
+
+<body>
+<p>This package defines CDR streams,
+used for communications between orbs, normally via network. 
+It also declares mechanisms, enabling the code, provided by one vendor, to run on the
+{@link org.omg.CORBA.ORB}, implemented by another vendor.</p>
+
+ at author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+</body>
+</html>

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/ORB.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/ORB.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/ORB.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/ORB.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,128 @@
+/* ORB.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA_2_3;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.NO_IMPLEMENT;
+import org.omg.CORBA.portable.ValueFactory;
+
+/**
+ * This class should provide the {@link org.omg.CORBA.ORB) ORB extensions,
+ * defined in the OMG CORBA version 2.3 specification. However in the
+ * Sun's API specification is written that this functionality is not
+ * implemented at least at least till 1.4 inclusive.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class ORB
+  extends org.omg.CORBA.ORB
+{
+  /**
+   * Should return a defintion of the value type as described
+   * in the interface repository.
+   *
+   * @param repository_id a value type repository id.
+   *
+   * @return never
+   * @throws BAD_PARAM never
+   * @throws NO_IMPLEMENT, always.
+   *
+   * @see org.omg.CORBA.portable.ValueBase
+   */
+  public org.omg.CORBA.Object get_value_def(String repository_id)
+                                     throws BAD_PARAM
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * This should register the given value factory under the given
+   * repository id.
+   *
+   * @param repository_id a repository id
+   *
+   * @return never
+   * @throws NO_IMPLEMENT, always.
+   */
+  public ValueFactory register_value_factory(String repository_id,
+                                             ValueFactory factory
+                                            )
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * This should unregister the given value factory under the given
+   * repository id.
+   *
+   * @param repository_id a repository id
+   *
+   * @return never
+   * @throws NO_IMPLEMENT, always.
+   */
+  public void unregister_value_factory(String id)
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * This should find a suitable value factory to create an instance
+   * of the value type when is being read (unmarshaled) from the
+   * stream.
+   *
+   * @param repository_id a repository id
+   *
+   * @return never
+   * @throws NO_IMPLEMENT, always.
+   */
+  public ValueFactory lookup_value_factory(String repository_id)
+  {
+    throw new NO_IMPLEMENT();
+  }
+
+  /**
+   * This method is called by RMI-IIOP {@link javax.rmi.Tie#orb(ORB)},
+   * passing <code>this</code> as parameter. The ORB will try to connect
+   * that tie as one of its objects.
+   */
+  public void set_delegate(java.lang.Object wrapper)
+  {
+    throw new NO_IMPLEMENT();
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/package.html
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/package.html?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/package.html (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/package.html Thu Nov  8 16:56:19 2007
@@ -0,0 +1,46 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html -
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath - org.omg.CORBA_2_3</title></head>
+
+<body>
+<p>This package supports the ORB extendsions that appeared since CORBA 2_3.</p>
+
+</body>
+</html>

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/Delegate.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/Delegate.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/Delegate.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/Delegate.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,67 @@
+/* Delegate.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA_2_3.portable;
+
+/**
+ * Extends the previous version of the Delegate by one additional method,
+ * defined in CORBA 2_3 .
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class Delegate
+  extends org.omg.CORBA.portable.Delegate
+{
+  /**
+   * Returns the codebase for the provided object reference.
+   * A codebase is a location information (for instance, URL), specifying,
+   * where the missing parts of the object code can be downloaded. This
+   * is important for the value type objects that handle they method calls
+   * locally and hence must have the local copy of the implementing code.
+   *
+   * This method must be overridden to get functionality, the default method
+   * always returns an empty string.
+   *
+   * @return normally, an agreed location information, specifying, where
+   * the supporting code (like java classes) can be found.
+   */
+  public String get_codebase(org.omg.CORBA.Object self)
+  {
+    return "";
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/InputStream.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/InputStream.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/InputStream.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/InputStream.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,209 @@
+/* InputStream.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA_2_3.portable;
+
+import gnu.CORBA.CDR.Vio;
+
+import org.omg.CORBA.CustomMarshal;
+import org.omg.CORBA.portable.BoxedValueHelper;
+import org.omg.CORBA.portable.StreamableValue;
+
+import java.io.Serializable;
+
+/**
+ * This class defines a new CDR input stream methods, added since
+ * CORBA 2.3.
+ *
+ * This class is abstract; no direct instances can be instantiated.
+ * Also, up till v 1.4 inclusive there are no methods that would
+ * return it, and only one unimplemented interface,
+ * {@link org.omg.CORBA.portable.ValueFactory }, needs it as a parameter.
+ *
+ * However since 1.3 all methods, declared as returning an
+ * org.omg.CORBA.portable.InputStream actually return the instance of this
+ * derived class and the new methods are accessible after the casting
+ * operation.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class InputStream
+  extends org.omg.CORBA.portable.InputStream
+{
+  /**
+   * Read the abstract interface. An abstract interface can be either
+   * CORBA value type or CORBA object and is returned as an abstract
+   * java.lang.Object.
+   *
+   * As specified in OMG specification, this reads a single
+   * boolean and then delegates either to {@link #read_Object()} (for false)
+   * or to {@link #read_Value()} (for true).
+   *
+   * @return an abstract interface, unmarshaled from the stream.
+   */
+  public Object read_abstract_interface()
+  {
+    boolean isObject = read_boolean();
+
+    if (isObject)
+      return read_Object();
+    else
+      return read_value();      
+  }
+
+  /**
+   * Read the abstract interface, corresponding to the passed type.
+   * An abstract interface can be either CORBA value type or CORBA
+   * object and is returned as an abstract java.lang.Object.
+   *
+   * As specified in OMG specification, this reads a single
+   * boolean and then delegates either to {@link #read_Object(Class)} (for false)
+   * or to {@link #read_Value(Class)} (for true).
+   *
+   * @param clz a base class for the abstract interface.
+   *
+   * @return an abstract interface, unmarshaled from the stream
+   */
+  public Object read_abstract_interface(Class clz)
+  {
+    boolean isValue = read_boolean();
+
+    if (isValue)
+      return read_value(clz);
+    else
+      return read_Object(clz);
+  }
+
+  /**
+   * Read a value type structure, extracting the repository id
+   * from the input stream itself. The repository id is optional
+   * in the value type record, but it  must be present for this
+   * method to succeed. The {@link OutputStream} of this
+   * implementation always stores the repository id.
+   *
+   * The casts the streams ORB into a CORBA 2.3 ORB and then
+   * searched for a suitable value factory, where it delegates
+   * the functionality.
+   *
+   * If you know the exact class or can create an unitialised instance
+   * of the value type, it is recommended (faster) to use
+   * {@link #read_value(Class)} or {@link #read_value(Serializable)}
+   * instead.
+   *
+   * @param repository_id a repository id of the value type.
+   *
+   * @return an value type structure, unmarshaled from the stream
+   */
+  public Serializable read_value()
+  {
+    return Vio.read(this);
+  }
+
+  /**
+   * Read a value type structure, corresponing to the passed type.
+   * As the type is known, the repository Id in the input stream is
+   * optional an not required. The codebase, if present, is also ignored.
+   *
+   * The passed class must implement either {@link CustomMarshal}
+   * for the user-defined reading operations or {@link StreamableValue}
+   * for the standard (generated by IDL compiler) reading operations.
+   * Also, it must have the parameterless constructor to create a new
+   * instance.
+   *
+   * @param clz a base class for a value type.
+   *
+   * @return an value type structure, unmarshaled from the stream
+   */
+  public Serializable read_value(Class clz)
+  {
+    return Vio.read(this, clz);
+  }
+
+  /**
+   * Read a value type structure content, when the unitialised
+   * instance is passed as a parameter. It is a fastest method to read
+   * a value type.
+   *
+   * As the type is known, the repository Id in the input stream is
+   * optional an not required. The codebase, if present, is also ignored.
+   *
+   * The passed instance must implement either {@link CustomMarshal}
+   * for the user-defined reading operations or {@link StreamableValue}
+   * for the standard (generated by IDL compiler) reading operations.
+   *
+   * @param unitialised_value the unitialised value.
+   *
+   * @return same value, filled in by the stream content.
+   */
+  public Serializable read_value(Serializable unitialised_value)
+  {
+    return (Serializable) Vio.read(this, unitialised_value, null);
+  }
+
+  /**
+   * Read a value type structure, having the given repository id.
+   * The casts the streams ORB into a CORBA 2.3 ORB and then
+   * searched for a suitable value factory, where it delegates
+   * the functionality.
+   *
+   * If you know the exact class or can create an unitialised instance
+   * of the value type, it is recommended (faster) to use
+   * {@link #read_value(Class)} or {@link #read_value(Serializable)}
+   * instead.
+   *
+   * @param repository_id a repository id of the value type.
+   *
+   * @return an value type structure, unmarshaled from the stream
+   */
+  public Serializable read_value(String repository_id)
+  {
+    return Vio.read(this, repository_id);
+  }
+
+  /**
+   * Use the provided boxed value helper to read the value.
+   *
+   * @param helper a helper for reading the value from the stream.
+   *
+   * @return an value type structure, unmarshaled from the stream.
+   */
+  public Serializable read_value(BoxedValueHelper helper)
+  {
+    return Vio.read(this, helper);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/ObjectImpl.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/ObjectImpl.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/ObjectImpl.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/ObjectImpl.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,82 @@
+/* ObjectImpl.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA_2_3.portable;
+
+import org.omg.CORBA.BAD_OPERATION;
+
+/**
+ * Extends the previous version of the CORBA object by one additional method,
+ * defined in CORBA 2_3 . See ancestor for details about the CORBA object.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class ObjectImpl
+  extends org.omg.CORBA.portable.ObjectImpl
+{
+  /**
+   * Returns the codebase for the provided object reference.
+   * A codebase is a location information (for instance, URL), specifying,
+   * where the missing parts of the object code can be downloaded. This
+   * is important for the value type objects that handle they method calls
+   * locally and hence must have the local copy of the implementing code.
+   *
+   * This implementation expects that the object delegate is set and is
+   * an instance of the org.omg.CORBA_2_3.portable.Delegate. If casts
+   * the set delegate to the given type and invokes
+   * {@link org.omg.CORBA_2_3.portable.Delegate#get_codebase}.
+   *
+   * @return normally, an agreed location information, specifying, where
+   * the supporting code (like java classes) can be found.
+   *
+   * @throws BAD_OPERATION if the object delegate is not an instance
+   * of org.omg.CORBA_2_3.portable.Delegate.
+   */
+  public String _get_codebase()
+  {
+    Object delegate = _get_delegate();
+    if (delegate instanceof org.omg.CORBA_2_3.portable.Delegate)
+      return ((org.omg.CORBA_2_3.portable.Delegate) delegate).get_codebase(this);
+    else if (delegate != null)
+      throw new BAD_OPERATION(delegate.getClass().getName() +
+                              " is not a org.omg.CORBA_2_3.portable.Delegate"
+                             );
+    else
+      throw new BAD_OPERATION("The delegate not set.");
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/OutputStream.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/OutputStream.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/OutputStream.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/OutputStream.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,158 @@
+/* OutputStream.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CORBA_2_3.portable;
+
+import gnu.CORBA.CDR.Vio;
+
+import org.omg.CORBA.portable.BoxedValueHelper;
+import org.omg.CORBA.portable.ValueBase;
+
+import java.io.Serializable;
+
+/**
+ * This class defines a new CDR input stream methods, added since
+ * CORBA 2.3.
+ *
+ * This class is abstract; no direct instances can be instantiated.
+ * Also, up till v 1.4 inclusive there are no methods that would
+ * return it directly.
+ *
+ * However since 1.3 all methods, declared as returning an
+ * org.omg.CORBA.portable.InputStream actually return the instance of this
+ * derived class and the new methods are accessible after the casting
+ * operation.
+ *
+ * @author Audrius Meskauskas (AudriusA at Bioinformatics.org)
+ */
+public abstract class OutputStream
+  extends org.omg.CORBA.portable.OutputStream
+{
+  /**
+   * Writes an abstract interface to the stream. An abstract interface can be
+   * eithe CORBA object or value type and is written as a union with the boolean
+   * discriminator (false for objects, true for value types).
+   * 
+   * The object from value is separated by fact that all values implement the
+   * {@link ValueBase} interface. Also, the passed parameter is treated as value
+   * it it does not implement CORBA Object.
+   * 
+   * @param an_interface an abstract interface to write.
+   */
+  public void write_abstract_interface(java.lang.Object an_interface)
+  {
+    boolean isObject = !(an_interface instanceof ValueBase)
+      && an_interface instanceof org.omg.CORBA.Object;
+
+    write_boolean(isObject);
+
+    if (isObject)
+      write_Object((org.omg.CORBA.Object) an_interface);
+    else
+      write_value((Serializable) an_interface);
+
+  }
+
+  /**
+   * Writes a value type into the output stream.
+   * 
+   * The value type must implement either {@link CustomValue} (for user-defined
+   * writing method) or {@link StramableValue} (for standard writing using code,
+   * generated by IDL compiler).
+   * 
+   * The written record will have a repository id, matching the class of the
+   * passed object. The codebase will not be written.
+   * 
+   * @param value a value type object to write.
+   */
+  public void write_value(Serializable value)
+  {
+    Vio.write(this, value);
+  }
+
+  /**
+   * Write value to the stream using the boxed value helper.
+   *
+   * The value type must implement either {@link CustomValue}
+   * (for user-defined writing method) or {@link StramableValue}
+   * (for standard writing using code, generated by IDL compiler).
+   *
+   * @param value a value to write.
+   * @param helper a helper, responsible for the writing operation.
+   */
+  public void write_value(Serializable value, BoxedValueHelper helper)
+  {
+    Vio.write(this, value, helper);
+  }
+
+  /**
+   * Writes a value type into the output stream, stating it is an
+   * instance of the given class. The written record
+   * will have a repository id, matching the passed class.
+   * The codebase will not be written. It the object
+   * being written is an instance of the different class, this results
+   * writing two Id inheritance hierarchy.
+   *
+   * The value type must implement either {@link CustomValue}
+   * (for user-defined writing method) or {@link StramableValue}
+   * (for standard writing using code, generated by IDL compiler).
+   *
+   * @param value a value type object to write.
+   */
+  public void write_value(Serializable value, Class clz)
+  {
+    Vio.write(this, value, clz);
+  }
+
+  /**
+   * Writes a value type into the output stream, stating it has the given
+   * repository id.
+   * 
+   * The value type must implement either {@link CustomValue} (for user-defined
+   * writing method) or {@link StramableValue} (for standard writing using code,
+   * generated by IDL compiler).
+   * 
+   * @param repository_id a repository id of the value type.
+   * 
+   * @param value a value type object to write.
+   */
+  public void write_value(Serializable value, String repository_id)
+  {
+    Vio.write(this, value, repository_id);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/package.html
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/package.html?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/package.html (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CORBA_2_3/portable/package.html Thu Nov  8 16:56:19 2007
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html -
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath - org.omg.CORBA_2_3.portable</title></head>
+
+<body>
+<p>This package supports the communication extensions that appeared since CORBA 2_3. 
+It mainly provides methods for input and output of value types. </p>
+
+</body>
+</html>

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/Binding.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/Binding.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/Binding.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/Binding.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,81 @@
+/* Binding.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Defines the binding with the given name and type.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class Binding
+  implements IDLEntity
+{
+  /**
+   * The binding type holds value ncontext for bindings,
+   * created with operations  bind_context,  rebind_context or
+   * bind_new_context. It holds value nobject of all other
+   * possible bindings.
+   */
+  public BindingType binding_type;
+
+  /**
+   * The binding name, consisting of the number of the name components.
+   */
+  public NameComponent[] binding_name;
+
+  /**
+   * Create an empty binding.
+   */
+  public Binding()
+  {
+  }
+
+  /**
+   * Create the binding, initialised to the given values.
+   * @param a_name the binding name.
+   * @param a_type the binding type.
+   */
+  public Binding(NameComponent[] a_name, BindingType a_type)
+  {
+    binding_name = a_name;
+    binding_type = a_type;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,135 @@
+/* BindingHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link Binding}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class BindingHelper
+{
+  /**
+   * The {@link Binding} repository id.
+   */
+  private static String _id = "IDL:omg.org/CosNaming/Binding:1.0";
+
+  /**
+   * Extract the binding from the given {@link Any}.
+   */
+  public static Binding extract(Any a)
+  {
+    try
+      {
+        return ((BindingHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("Binding expected");
+        bad.minor = Minor.Any;
+        bad.initCause(ex);
+        throw bad;
+      }
+  }
+
+  /**
+   * Return the binding repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the binding into the given {@link Any}.
+   */
+  public static void insert(Any a, Binding that)
+  {
+    a.insert_Streamable(new BindingHolder(that));
+  }
+
+  /**
+   * Read the binding from the given CDR stream.
+   */
+  public static Binding read(InputStream istream)
+  {
+    Binding value = new Binding();
+    value.binding_name = NameHelper.read(istream);
+    value.binding_type = BindingTypeHelper.read(istream);
+    return value;
+  }
+
+  /**
+   * Create the type code for this exception.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    
+    StructMember[] members = new StructMember[ 2 ];
+    TypeCode member;
+    member = NameComponentHelper.type();
+    member = orb.create_sequence_tc(0, member);
+    member = orb.create_alias_tc(NameHelper.id(), "Name", member);
+    members [ 0 ] = new StructMember("binding_name", member, null);
+    member = BindingTypeHelper.type();
+    members [ 1 ] = new StructMember("binding_type", member, null);
+    return orb.create_struct_tc(id(), "Binding", members);
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   */
+  public static void write(OutputStream ostream, Binding value)
+  {
+    NameHelper.write(ostream, value.binding_name);
+    BindingTypeHelper.write(ostream, value.binding_type);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,94 @@
+/* BindingHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A holder for the binding type.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class BindingHolder
+  implements Streamable
+{
+  /**
+   * The stored binding type.
+   */
+  public Binding value;
+
+  /**
+   * Create an empty instance.
+   */
+  public BindingHolder()
+  {
+  }
+
+  /**
+   * Create the intialised holder.
+   */
+  public BindingHolder(Binding initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Read the holder value from the CDR stream.
+   */
+  public void _read(org.omg.CORBA.portable.InputStream i)
+  {
+    value = BindingHelper.read(i);
+  }
+
+  /**
+   * Return the binding type code.
+   */
+  public org.omg.CORBA.TypeCode _type()
+  {
+    return BindingHelper.type();
+  }
+
+  /**
+   * Write the holder value to the CDR stream.
+   */
+  public void _write(org.omg.CORBA.portable.OutputStream o)
+  {
+    BindingHelper.write(o, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIterator.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIterator.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIterator.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIterator.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,87 @@
+/* BindingIterator.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * The iterator for seing the available bindings.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface BindingIterator
+  extends BindingIteratorOperations, org.omg.CORBA.Object, Serializable,
+          IDLEntity
+{
+  /**
+   * Destroy the iterator on the server side. This must always be
+   * called, as otherwise the iterator will remain on the server even
+   * after the client application terminates.
+   *
+   * @specnote since 1.3 this method has moved into BindingIteratorOperations.
+   */
+  void destroy();
+
+  /**
+   * Return the desired amount of bindings.
+   *
+   * @param amount the maximal number of bindings to return.
+   * @param a_list a holder to store the returned bindings.
+   *
+   * @return false if there are no more bindings available,
+   * true otherwise.
+   *
+   * @specnote since 1.3 this method has moved into BindingIteratorOperations.
+   */
+  boolean next_n(int amount, BindingListHolder a_list);
+
+  /**
+   * Return the next binding.
+   *
+   * @param a_binding a holder, where the next binding will be stored.
+   *
+   * @return false if there are no more bindings available, true
+   * otherwise.
+   *
+   * @specnote since 1.3 this method has moved into BindingIteratorOperations.
+   */
+  boolean next_one(BindingHolder a_binding);
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,176 @@
+/* BindingIteratorHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.Delegate;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link BindingIterator}
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class BindingIteratorHelper
+{
+  /**
+   * The {@link BindingIterator} repository id.
+   */
+  private static String _id = "IDL:omg.org/CosNaming/BindingIterator:1.0";
+
+  /**
+   * Extract the binding iterator from the given {@link Any}.
+   */
+  public static BindingIterator extract(Any a)
+  {
+    try
+      {
+        return ((BindingIteratorHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("Binding iterator expected");
+        bad.initCause(ex);
+        bad.minor = Minor.Any;
+        throw bad;
+      }
+  }
+
+  /**
+   * Return the binding iterator repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the binding iterator into the given {@link Any}.
+   */
+  public static void insert(Any a, BindingIterator that)
+  {
+    a.insert_Streamable(new BindingIteratorHolder(that));
+  }
+
+  /**
+   * Narrow the given object to the BindingIterator. The narrowing
+   * means either direct casting or re-instantiating with the same
+   * delegate.
+   *
+   * @param obj the object to cast.
+   *
+   * @return the casted binding iterator.
+   */
+  public static BindingIterator narrow(org.omg.CORBA.Object obj)
+  {
+    if (obj == null)
+      return null;
+    else if (obj instanceof BindingIterator)
+      return (BindingIterator) obj;
+    else if (!obj._is_a(id()))
+      throw new BAD_PARAM();
+    else
+      {
+        Delegate delegate = ((ObjectImpl) obj)._get_delegate();
+        return new _BindingIteratorStub(delegate);
+      }
+  }
+  
+  /**
+   * Narrow the given object to the BindingIterator. No type-checking is
+   * performed to verify that the object actually supports the requested type.
+   * The {@link BAD_OPERATION} will be thrown if unsupported operations are
+   * invoked on the new returned reference, but no failure is expected at the
+   * time of the unchecked_narrow.
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted binding iterator.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static BindingIterator unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    if (obj == null)
+      return null;
+    else if (obj instanceof BindingIterator)
+      return (BindingIterator) obj;
+    else
+      {
+        // Do not call the _is_a(..).
+        Delegate delegate = ((ObjectImpl) obj)._get_delegate();
+        return new _BindingIteratorStub(delegate);
+      }    
+  }
+
+  /**
+   * Read the exception from the given CDR stream.
+   */
+  public static BindingIterator read(InputStream istream)
+  {
+    return narrow(istream.read_Object(_BindingIteratorStub.class));
+  }
+
+  /**
+   * Create the type code for the BindingIterator.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "BindingIterator");
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   */
+  public static void write(OutputStream ostream, BindingIterator value)
+  {
+    ostream.write_Object((org.omg.CORBA.Object) value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* BindingIteratorHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * The holder to store the binding iterator.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class BindingIteratorHolder
+  implements Streamable
+{
+  /**
+   * The stored binding iterator.
+   */
+  public BindingIterator value;
+
+  /**
+   * Create an empty instance of this holder.
+   */
+  public BindingIteratorHolder()
+  {
+  }
+
+  /**
+   * Create the intialised instance.
+   */
+  public BindingIteratorHolder(BindingIterator initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Read the holder value from the CDR stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = BindingIteratorHelper.read(in);
+  }
+
+  /**
+   * Returen the type code of the binding iterator.
+   */
+  public TypeCode _type()
+  {
+    return BindingIteratorHelper.type();
+  }
+
+  /**
+   * Write the intialised value to the CDR stream.
+   */
+  public void _write(OutputStream out)
+  {
+    BindingIteratorHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,78 @@
+/* BindingIterator.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+/**
+ * The operations, applicable for an iterator for seing the available
+ * bindings.
+ *
+ * @since 1.3
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface BindingIteratorOperations
+{
+  /**
+   * Destroy the iterator on the server side. This must always be
+   * called, as otherwise the iterator will remain on the server even
+   * after the client application terminates.
+   */
+  void destroy();
+
+  /**
+   * Return the desired amount of bindings.
+   *
+   * @param amount the maximal number of bindings to return.
+   * @param a_list a holder to store the returned bindings.
+   *
+   * @return false if there are no more bindings available,
+   * true otherwise.
+   */
+  boolean next_n(int amount, BindingListHolder a_list);
+
+  /**
+   * Return the next binding.
+   *
+   * @param a_binding a holder, where the next binding will be stored.
+   *
+   * @return false if there are no more bindings available, true
+   * otherwise.
+   */
+  boolean next_one(BindingHolder a_binding);
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorPOA.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorPOA.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorPOA.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingIteratorPOA.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,131 @@
+/* BindingIteratorPOA.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.CompletionStatus;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.InvokeHandler;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.ResponseHandler;
+import org.omg.PortableServer.POA;
+import org.omg.PortableServer.Servant;
+
+/**
+ * The binding iterator servant, used in POA-based naming service
+ * implementations.
+ * 
+ * @since 1.4 
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class BindingIteratorPOA
+  extends Servant
+  implements BindingIteratorOperations, InvokeHandler
+{
+  /** @inheritDoc */
+  public String[] _all_interfaces(POA poa, byte[] object_ID)
+  {
+    return new String[] { BindingIteratorHelper.id() };
+  }
+
+  /**
+   * Call the required method.
+   */
+  public OutputStream _invoke(String method, InputStream in, ResponseHandler rh)
+  {
+    OutputStream out = null;
+
+    // We suppose that the next_n should be the most popular.
+    if (method.equals("next_n"))
+      {
+        // The next_n has been invoked.
+        int amount = in.read_ulong();
+        BindingListHolder a_list = new BindingListHolder();
+
+        boolean result = next_n(amount, a_list);
+
+        out = rh.createReply();
+        out.write_boolean(result);
+        BindingListHelper.write(out, a_list.value);
+      }
+    else if (method.equals("next_one"))
+      {
+        // The next_one has been invoked.
+        BindingHolder a_binding = new BindingHolder();
+
+        boolean result = next_one(a_binding);
+
+        out = rh.createReply();
+        out.write_boolean(result);
+        BindingHelper.write(out, a_binding.value);
+      }
+    else if (method.equals("destroy"))
+      {
+        // The destroy has been invoked.
+        destroy();
+        out = rh.createReply();
+      }
+    else
+      throw new BAD_OPERATION(method, Minor.Method, 
+        CompletionStatus.COMPLETED_MAYBE);
+
+    return out;
+  }
+
+  /**
+   * Get the CORBA object that delegates calls to this servant. The servant must
+   * be already connected to an ORB.
+   */
+  public BindingIterator _this()
+  {
+    return BindingIteratorHelper.narrow(super._this_object());
+  }
+
+  /**
+   * Get the CORBA object that delegates calls to this servant. Connect to the
+   * given ORB, if needed.
+   */
+  public BindingIterator _this(org.omg.CORBA.ORB orb)
+  {
+    return BindingIteratorHelper.narrow(super._this_object(orb));
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingListHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingListHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingListHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingListHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,129 @@
+/* BindingListHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for the binding list.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class BindingListHelper
+{
+  /**
+   * The binding list repository id.
+   */
+  private static String _id = "IDL:omg.org/CosNaming/BindingList:1.0";
+
+  /**
+   * Extract the array of bindings from the given {@link Any}.
+   */
+  public static Binding[] extract(Any a)
+  {
+    try
+      {
+        return ((BindingListHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("Binding list expected");
+        bad.initCause(ex);
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the binding list repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the array of bindings into the given {@link Any}.
+   */
+  public static void insert(Any a, Binding[] bindings)
+  {
+    a.insert_Streamable(new BindingListHolder(bindings));
+  }
+
+  /**
+   * Read the array of bindings from the given CDR input stream.
+   */
+  public static Binding[] read(InputStream istream)
+  {
+    Binding[] value = new Binding[ istream.read_long() ];
+
+    for (int i = 0; i < value.length; i++)
+      value [ i ] = BindingHelper.read(istream);
+    return value;
+  }
+
+  /**
+   * Return the binding array type code.
+   */
+  public static TypeCode type()
+  {
+    TypeCode typeCode;
+    ORB orb = OrbRestricted.Singleton;
+    typeCode = BindingHelper.type();
+    typeCode = orb.create_sequence_tc(0, typeCode);
+    typeCode = orb.create_alias_tc(id(), "BindingList", typeCode);
+    return typeCode;
+  }
+
+  /**
+   * Write the array of bindings into the given CDR output stream.
+   */
+  public static void write(OutputStream ostream, Binding[] value)
+  {
+    ostream.write_long(value.length);
+    for (int i = 0; i < value.length; i++)
+      org.omg.CosNaming.BindingHelper.write(ostream, value [ i ]);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingListHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingListHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingListHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingListHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* BindingListHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A class to hold the binding list.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class BindingListHolder
+  implements Streamable
+{
+  /**
+   * The wrapped binding list.
+   */
+  public Binding[] value = null;
+
+  /**
+   * Create the unitialised holder.
+   */
+  public BindingListHolder()
+  {
+  }
+
+  /**
+   * Create the holder, intialised to the given value.
+   */
+  public BindingListHolder(Binding[] initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Read the binding list from the given CDR stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = BindingListHelper.read(in);
+  }
+
+  /**
+   * Get the type code of the binding.
+   */
+  public TypeCode _type()
+  {
+    return BindingListHelper.type();
+  }
+
+  /**
+   * Write the binding list into the given CDR stream.
+   */
+  public void _write(OutputStream out)
+  {
+    BindingListHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingType.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingType.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingType.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingType.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,129 @@
+/* BindingType.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.BAD_PARAM;
+
+/**
+ * Specifies the binding type (how the binding has been created).
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class BindingType
+  implements org.omg.CORBA.portable.IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 3735105633408228513L;
+
+  /**
+   * This constant means that the binding has been created
+   * with operations  bind_context,  rebind_context or
+   * bind_new_context.
+   */
+  public static final int _ncontext = 1;
+
+  /**
+   * This constant means that the binding has been created by the
+   * means, different from the listed in {@link _ncontext} description.
+   */
+  public static final int _nobject = 0;
+
+  /**
+   * This constant means that the binding has been created
+   * with operations  bind_context,  rebind_context or
+   * bind_new_context.
+   */
+  public static final BindingType ncontext = new BindingType(_ncontext);
+
+  /**
+   * This constant means that the binding has been created by the
+   * means, different from the listed in {@link _ncontext} description.
+   */
+  public static final BindingType nobject = new BindingType(_nobject);
+
+  /**
+   * The binding type, defined by this instance.
+   */
+  private final int type;
+
+  /**
+   * Create the new binding type definition.
+   *
+   * @param value the binding type, normally either _nobject or
+   * _ncontext.
+   */
+  protected BindingType(int value)
+  {
+    type = value;
+  }
+
+  /**
+   * Get the binding type instance, matching its integer code.
+   *
+   * @param value the binding type code.
+   * @return the matching binding type instance.
+   *
+   * @throws BAD_KIND if there is no matching binding type for
+   * the passed value.
+   */
+  public static BindingType from_int(int value)
+  {
+    switch (value)
+      {
+        case _nobject :
+          return nobject;
+
+        case _ncontext :
+          return ncontext;
+
+        default :
+          throw new BAD_PARAM("Unsupported binding type code " + value);
+      }
+  }
+
+  /**
+   * Return the integer code for this binding.
+   */
+  public int value()
+  {
+    return type;
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingTypeHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingTypeHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingTypeHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingTypeHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,120 @@
+/* BindingTypeHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations of the {@link BindingType}
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class BindingTypeHelper
+{
+  /**
+   * The binding type repository id.
+   */
+  private static String id = "IDL:omg.org/CosNaming/BindingType:1.0";
+  /**
+   * Extract the binding type from the given {@link Any}.
+   */
+  public static BindingType extract(Any any)
+  {
+    try
+      {
+        return ((BindingTypeHolder) any.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("Binding type expected");
+        bad.initCause(ex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Return the binding type repository id.
+   */
+  public static String id()
+  {
+    return id;
+  }
+
+  /**
+   * Insert the binding type into the given {@link Any}.
+   */
+  public static void insert(Any any, BindingType that)
+  {
+    any.insert_Streamable(new BindingTypeHolder(that));
+  }
+
+  /**
+   * Read the binding type from the CDR input stream.
+   */
+  public static BindingType read(InputStream istream)
+  {
+    return BindingType.from_int(istream.read_long());
+  }
+
+  /**
+   * Get the type code of this enumeration.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_enum_tc(id(), "BindingType",
+                                     new String[] { "nobject", "ncontext" });
+  }
+
+  /**
+   * Write the binding type to the CDR output stream.
+   */
+  public static void write(OutputStream ostream, BindingType value)
+  {
+    ostream.write_long(value.value());
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingTypeHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingTypeHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingTypeHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/BindingTypeHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,93 @@
+/* BindingTypeHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * Holds the binding type.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class BindingTypeHolder
+  implements Streamable
+{
+  /**
+   * The stored binding type value.
+   */
+  public BindingType value;
+
+  /**
+   * Create the unitialised holder.
+   */
+  public BindingTypeHolder()
+  {
+  }
+
+  /**
+   * Create the holder, intialised to the given value.
+   */
+  public BindingTypeHolder(BindingType initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Read the holder value from the CDR input stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = BindingTypeHelper.read(in);
+  }
+
+  public org.omg.CORBA.TypeCode _type()
+  {
+    return BindingTypeHelper.type();
+  }
+
+  /**
+   * Write the stored value to the CDR output stream.
+   */
+  public void _write(OutputStream out)
+  {
+    BindingTypeHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/IstringHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/IstringHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/IstringHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/IstringHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,120 @@
+/* IstringHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * "Istring" was a "placeholder for a future IDL internationalized
+ * string data type" in the original specification. It is maintained
+ * solely for compatibility reasons. In both java and CORBA,
+ * Istring is now identical to the narrow (not wide) string and needs
+ * no helper. This class is implemented just for compatibility
+ * reasons.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class IstringHelper
+{
+  /**
+   * Insert the IString into Any (uses {@link Any.insert_string}).
+   *
+   * @param a the Any to insert into.
+   * @param that the string to insert.
+   */
+  public static void insert(Any a, String that)
+  {
+    a.insert_string(that);
+  }
+
+  /**
+   * Extract the IString from Any ((uses {@link Any.extract_string}).
+   *
+   * @param a the Any to extract from.
+   */
+  public static String extract(Any a)
+  {
+    return a.extract_string();
+  }
+
+  /**
+   * Return an alias typecode.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    return orb.create_alias_tc(id(), "Istring", orb.create_string_tc(0));
+  }
+
+  /**
+   * Return the IString repository id.
+   * @return "IDL:omg.org/CosNaming/Istring:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/CosNaming/Istring:1.0";
+  }
+
+  /**
+   * Calls {@link InputStream#read_string()}.
+   *
+   * @param instream the stream to read from.
+   */
+  public static String read(InputStream istream)
+  {
+    return istream.read_string();
+  }
+
+  /**
+   * Calls {@link OutputStream#write_string()}.
+   *
+   * @param ostream the stream to write into.
+   * @param value the string (IString) value to write.
+   */
+  public static void write(OutputStream ostream, String value)
+  {
+    ostream.write_string(value);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponent.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponent.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponent.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponent.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,130 @@
+/* NameComponent.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.util.zip.Adler32;
+
+/**
+ * The name component, a node in the multi-comonent name.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NameComponent
+  implements IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -1052538183391762390L;
+
+  /**
+   * The name component identifier.
+   */
+  public String id;
+
+  /**
+  * The name component kind (this conception is similar to
+  * the file type conception.
+  */
+  public String kind;
+
+  /**
+   * Create the empty name component.
+   */
+  public NameComponent()
+  {
+  }
+
+  /**
+   * Create the initialised name component.
+   */
+  public NameComponent(String _id, String _kind)
+  {
+    id = _id;
+    kind = _kind;
+  }
+
+  /**
+   * Returns true if both name and kind are equal.
+   */
+  public boolean equals(Object other)
+  {
+    if (other instanceof NameComponent)
+      {
+        NameComponent n = (NameComponent) other;
+
+        boolean ieq;
+        boolean keq;
+
+        if (id == null || n.id == null)
+          ieq = id == n.id;
+        else
+          ieq = id.equals(n.id);
+
+        if (kind == null || n.kind == null)
+          keq = kind == n.kind;
+        else
+          keq = kind.equals(n.kind);
+
+        return keq && ieq;
+      }
+    else
+      return false;
+  }
+
+  /**
+   * Get a string representation (id.kind).
+   */
+  public String toString()
+  {
+    return id + "." + kind;
+  }
+
+  /**
+   * Return the hashCode of this NameComponent.
+   */
+  public int hashCode()
+  {
+    Adler32 adler = new Adler32();
+    adler.update(toString().getBytes());
+    return (int) adler.getValue() & Integer.MAX_VALUE;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponentHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponentHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponentHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponentHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,137 @@
+/* NameComponentHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper classes for the name component.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NameComponentHelper
+{
+  /**
+   * A {@link NameComponent} repository id.
+   */
+  private static String _id = "IDL:omg.org/CosNaming/NameComponent:1.0";
+
+  /**
+   * Extract the name component from this {@link Any}
+   */
+  public static NameComponent extract(Any a)
+  {
+    try
+      {
+        return ((NameComponentHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("Name component expected");
+        bad.initCause(ex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the repository Id of the {@link NameComponent}.
+   * @return
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the name compnent into the given {@link Any}.
+   */
+  public static void insert(Any a, NameComponent that)
+  {
+    a.insert_Streamable(new NameComponentHolder(that));
+  }
+
+  /**
+   * Read the name component from the given CDR input stream.
+   */
+  public static NameComponent read(InputStream istream)
+  {
+    NameComponent value = new NameComponent();
+    value.id = istream.read_string();
+    value.kind = istream.read_string();
+    return value;
+  }
+
+  /**
+   * Get the type code of the named component.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    
+    StructMember[] members = new StructMember[ 2 ];
+    TypeCode member;
+    member = orb.create_string_tc(0);
+    members [ 0 ] = new StructMember("id", member, null);
+    member = orb.create_string_tc(0);
+    members [ 1 ] = new StructMember("kind", member, null);
+    return
+    orb.create_struct_tc(NameComponentHelper.id(), "NameComponent",
+                         members
+    );
+  }
+
+  /**
+   * Write the named component into the CDR output stream.
+   */
+  public static void write(OutputStream ostream, NameComponent value)
+  {
+    ostream.write_string(value.id);
+    ostream.write_string(value.kind);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponentHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponentHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponentHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameComponentHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* NameComponentHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * The name component holder.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NameComponentHolder
+  implements Streamable
+{
+  /**
+   * The stored value.
+   */
+  public NameComponent value;
+
+  /**
+   * Create the unitialised holder.
+   */
+  public NameComponentHolder()
+  {
+  }
+
+  /**
+   * Create the initialised holder.
+   */
+  public NameComponentHolder(NameComponent initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the value field by reading it from the CDR input stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = NameComponentHelper.read(in);
+  }
+
+  /**
+   * Get the type code of the {@link NameComponent}.
+   */
+  public TypeCode _type()
+  {
+    return NameComponentHelper.type();
+  }
+
+  /**
+   * Write the stored value into the given CDR output stream.
+   */
+  public void _write(OutputStream out)
+  {
+    NameComponentHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,134 @@
+/* NameHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for the name that is defined as an array
+ * of the name components. There is no java class, directly matching
+ * the 'Name' IDL type.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NameHelper
+{
+  /**
+   * The repository id of the Name.
+   */
+  private static String _id = "IDL:omg.org/CosNaming/Name:1.0";
+
+  /**
+   * Extract the Name the given {@link Any}.
+   */
+  public static NameComponent[] extract(Any a)
+  {
+    try
+      {
+        return ((NameHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("Name expected");
+        bad.initCause(ex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the Name repository Id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Extract the Name from the given {@link Any}.
+   */
+  public static void insert(Any a, NameComponent[] that)
+  {
+    a.insert_Streamable(new NameHolder(that));
+  }
+
+  /**
+   * Read the Name from the given CDR input stream.
+   */
+  public static NameComponent[] read(InputStream istream)
+  {
+    NameComponent[] value = null;
+    int l = istream.read_long();
+    value = new NameComponent[ l ];
+    for (int i = 0; i < value.length; ++i)
+      value [ i ] = NameComponentHelper.read(istream);
+    return value;
+  }
+
+  /**
+   * Get the type code of the Name.
+   */
+  public static TypeCode type()
+  {
+    TypeCode typeCode;
+    typeCode = NameComponentHelper.type();
+    typeCode = OrbRestricted.Singleton.create_sequence_tc(0, typeCode);
+    typeCode =
+      OrbRestricted.Singleton.create_alias_tc(NameHelper.id(), "Name", typeCode);
+    return typeCode;
+  }
+
+  /**
+   * Write the Name into the CDR output stream.
+   */
+  public static void write(OutputStream ostream, NameComponent[] value)
+  {
+    ostream.write_long(value.length);
+    for (int i = 0; i < value.length; ++i)
+      NameComponentHelper.write(ostream, value [ i ]);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NameHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,99 @@
+/* NameHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * The holder for the name that is defined as an array
+ * of the name components. There is no java class, directly matching
+ * the 'Name' IDL type.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NameHolder
+  implements Streamable
+{
+  /**
+   * The stored Name (array of the name components).
+   */
+  public NameComponent[] value;
+
+  /**
+   * Create the empty holder.
+   */
+  public NameHolder()
+  {
+  }
+
+  /**
+   * Create the intialised holder.
+   */
+  public NameHolder(NameComponent[] initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the holder value by reading it from the CDR input stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = NameHelper.read(in);
+  }
+
+  /**
+   * Get the Name type code.
+   */
+  public TypeCode _type()
+  {
+    return NameHelper.type();
+  }
+
+  /**
+   * Write the stored value into CDR output stream.
+   */
+  public void _write(OutputStream out)
+  {
+    NameHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContext.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContext.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContext.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContext.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,197 @@
+/* NamingContext.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.portable.IDLEntity;
+import org.omg.CosNaming.NamingContextPackage.AlreadyBound;
+import org.omg.CosNaming.NamingContextPackage.CannotProceed;
+import org.omg.CosNaming.NamingContextPackage.InvalidName;
+import org.omg.CosNaming.NamingContextPackage.NotEmpty;
+import org.omg.CosNaming.NamingContextPackage.NotFound;
+
+/**
+ * The interface for the naming context. The naming context can
+ * store (bound) and retrieve (resolve) the named objects or
+ * named child contexts. These operations are defined in a separate
+ * interface.
+ *
+ * @see NamingContextExt
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface NamingContext
+  extends NamingContextOperations, org.omg.CORBA.Object, IDLEntity
+{
+  /**
+   * Gives the object a name, valid in this context.
+   *
+   * @param a_name the name, being given to the object.
+   * @param an_object the object, being named.
+   *
+   * @throws AlreadyBound if the object is already named in this context.
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  void bind(NameComponent[] a_name, org.omg.CORBA.Object an_object)
+     throws NotFound, CannotProceed, InvalidName, AlreadyBound;
+
+  /**
+   * Gives a child context name, valid in this context.
+   *
+   * @param a_name the name, being given to the child context.
+   * @param a_context the child context being named.
+   *
+   * @throws AlreadyBound if the child context is already named in
+   * the current context.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  void bind_context(NameComponent[] a_name, NamingContext a_context)
+             throws NotFound, CannotProceed, InvalidName, AlreadyBound;
+
+  /**
+   * Create a new context and give it a given name (bound it)
+   * in the current context.
+   *
+   * @param a_name the name being given to the new context.
+   *
+   * @return the newly created context.
+   *
+   * @throws AlreadyBound if the name is already in use.
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  NamingContext bind_new_context(NameComponent[] a_name)
+                          throws NotFound, AlreadyBound, CannotProceed,
+                                 InvalidName;
+
+  /**
+   * Destroy this context (must be empty).
+   * @throws NotEmpty if the context being destroyed is not empty.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  void destroy()
+        throws NotEmpty;
+
+  /**
+   * Iterate over all bindings, defined in this namind context.
+   *
+   * @param amount the maximal number of context to return in the
+   * holder a_list. The remaining bindings are accessible via iterator
+   * an_iter. If the parameter amount is zero, all bindings are accessed only
+   * via this iterator.
+   *
+   * @param a_list the holder, where the returned bindigs are stored.
+   * @param an_iter the iterator that can be used to access the remaining
+   * bindings.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  void list(int amount, BindingListHolder a_list, BindingIteratorHolder an_iter);
+
+  /**
+   * Creates a new naming context, not bound to any name.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  NamingContext new_context();
+
+  /**
+   * Names or renames the object.
+   *
+   * @param a_name the new name, being given to the object. If
+   * the object is already named in this context, it is renamed.
+   *
+   * @param an_object the object, being named.
+   *
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  void rebind(NameComponent[] a_name, org.omg.CORBA.Object an_object)
+       throws NotFound, CannotProceed, InvalidName;
+
+  /**
+   * Names or renames the child context.
+   * If the child context is already named in
+   * the current context, it is renamed.
+   *
+   * @param a_name the name, being given to the child context.
+   * @param a_context the child context being named.
+   *
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  void rebind_context(NameComponent[] a_name, NamingContext a_context)
+               throws NotFound, CannotProceed, InvalidName;
+
+  /**
+   * Get the object, bound to the specified name in this
+   * context.
+   *
+   * @param a_name the object name.
+   *
+   * @return the object, matching this name. The client
+   * usually casts or narrows (using the helper) the returned value
+   * to the more specific type.
+   *
+   * @throws NotFound
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  org.omg.CORBA.Object resolve(NameComponent[] a_name)
+                        throws NotFound, CannotProceed, InvalidName;
+
+  /**
+   * Removes the name from the binding context.
+   *
+   * @param a_name a name to remove.
+   *
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   *
+   * @specnote since 1.3 this method has moved into NamingContextOperations.
+   */
+  void unbind(NameComponent[] a_name)
+       throws NotFound, CannotProceed, InvalidName;
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExt.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExt.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExt.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExt.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,55 @@
+/* NamingContextExt.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * The extended naming context interface, defined since 1.4. The context
+ * operations are defined separately from the context interface.
+ *
+ * This interface is derived from the previous NamingContex version,
+ * requiring to implement all previously available functionality.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface NamingContextExt
+  extends NamingContextExtOperations, NamingContext, IDLEntity
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,178 @@
+/* NamingContextExtHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.Delegate;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for the extended naming context.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NamingContextExtHelper
+{
+  /**
+   * The naming context repository id.
+   */
+  private static String _id = "IDL:omg.org/CosNaming/NamingContextExt:1.0";
+
+  /**
+   * Extract the naming context from the given {@link Any}.
+   */
+  public static NamingContextExt extract(Any a)
+  {
+    try
+      {
+        return ((NamingContextExtHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("NamingContextExt expected");
+        bad.initCause(ex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the {@link NamingContextExt} repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the naming context into the given {@link Any}
+   */
+  public static void insert(Any a, NamingContextExt that)
+  {
+    a.insert_Streamable(new NamingContextExtHolder(that));
+  }
+
+  /**
+   * Cast the passed object into the NamingContextExt. If the
+   * object has a different java type, create an instance
+   * of the NamingContextExt, using the same delegate, as for
+   * the passed parameter. Hence this method may return
+   * a different object, than has been passed.
+   *
+   * @param obj the object to cast.
+   * @return casted instance.
+   */
+  public static NamingContextExt narrow(org.omg.CORBA.Object obj)
+  {
+    if (obj == null)
+      return null;
+    else if (obj instanceof NamingContextExt)
+      return (NamingContextExt) obj;
+    else if (!obj._is_a(id()))
+      throw new BAD_PARAM();
+    else
+      {
+        Delegate delegate = ((ObjectImpl) obj)._get_delegate();
+        return new _NamingContextExtStub(delegate);
+      }
+  }
+  
+  /**
+   * Narrow the given object to the NamingContextExt. No type-checking is
+   * performed to verify that the object actually supports the requested type.
+   * The {@link BAD_OPERATION} will be thrown if unsupported operations are
+   * invoked on the new returned reference, but no failure is expected at the
+   * time of the unchecked_narrow.
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted NamingContextExt
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static NamingContextExt unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    if (obj == null)
+      return null;
+    else if (obj instanceof NamingContextExt)
+      return (NamingContextExt) obj;
+    else
+      {
+        // Do not call the _is_a(..).
+        Delegate delegate = ((ObjectImpl) obj)._get_delegate();
+        return new _NamingContextExtStub(delegate);
+      }    
+  }
+
+  /**
+   * Read the extended naming context from the given CDR input stream.
+   */
+  public static NamingContextExt read(InputStream istream)
+  {
+    return narrow(istream.read_Object(_NamingContextExtStub.class));
+  }
+
+  /**
+   * Get the type code of the {@link NamingContextExt}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(NamingContextExtHelper.id(),
+                                          "NamingContextExt");
+  }
+
+  /**
+   * Write the given extended naming context into the given CDR output stream.
+   */
+  public static void write(OutputStream ostream, NamingContextExt value)
+  {
+    ostream.write_Object(value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* NamingContextExtHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A holder for the extended naming context, added since 1.4.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NamingContextExtHolder
+  implements Streamable
+{
+  /**
+   * A stored value.
+   */
+  public NamingContextExt value;
+
+  /**
+   * Create the unitialised naming context holder.
+   */
+  public NamingContextExtHolder()
+  {
+  }
+
+  /**
+   * Create the naming context holder, intialised to the given value.
+   */
+  public NamingContextExtHolder(NamingContextExt initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Read the naming context from the given CDR input stream.
+   */
+  public void _read(InputStream i)
+  {
+    value = NamingContextExtHelper.read(i);
+  }
+
+  /**
+   * Get the typecode of the naming context.
+   */
+  public TypeCode _type()
+  {
+    return NamingContextExtHelper.type();
+  }
+
+  /**
+   * Write the naming context to the given CDR output stream.
+   */
+  public void _write(OutputStream o)
+  {
+    NamingContextExtHelper.write(o, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* NamingContextExtOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CosNaming.NamingContextExtPackage.InvalidAddress;
+import org.omg.CosNaming.NamingContextPackage.CannotProceed;
+import org.omg.CosNaming.NamingContextPackage.InvalidName;
+import org.omg.CosNaming.NamingContextPackage.NotFound;
+
+/**
+ * The extended naming context operations, defined since 1.4.
+ * The extensions are focused on providing the simplier way
+ * to use naming service with the string-based names and
+ * addresses.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface NamingContextExtOperations
+  extends NamingContextOperations
+{
+  /**
+   * Resolve the name, represented in the form of the string.
+   * The components of the composite name are separated by
+   * slash ('/').
+   *
+   * @param a_name_string the name to resolve.
+   * @return the object, referenced by the name.
+   */
+  org.omg.CORBA.Object resolve_str(String a_name_string)
+                            throws NotFound, CannotProceed, InvalidName;
+
+  /**
+   * Converts the name, represented in the form of the string,
+   * into the older name representation (array of the name
+   * components).
+   *
+   * @param a_name_string the stringified form of the name.
+   *
+   * @return the component array form of the name.
+   *
+   * @throws InvalidName if the name is invalid.
+   */
+  NameComponent[] to_name(String a_name_string)
+                   throws InvalidName;
+
+  /**
+   * Converts the older representation for the name (array
+   * of the name components) into the string form of the name.
+   *
+   * @param a_name the name, as an array of components.
+   *
+   * @return the same name as a string.
+   *
+   * @throws InvalidName if the name is invalid.
+   */
+  String to_string(NameComponent[] a_name)
+            throws InvalidName;
+
+  String to_url(String an_address, String a_name_string)
+         throws InvalidAddress, InvalidName;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPOA.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPOA.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPOA.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPOA.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,463 @@
+/* NamingContextExtPOA.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.CompletionStatus;
+import org.omg.CORBA.ObjectHelper;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.InvokeHandler;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.ResponseHandler;
+import org.omg.CosNaming.NamingContextExtPackage.InvalidAddress;
+import org.omg.CosNaming.NamingContextExtPackage.InvalidAddressHelper;
+import org.omg.CosNaming.NamingContextPackage.AlreadyBound;
+import org.omg.CosNaming.NamingContextPackage.AlreadyBoundHelper;
+import org.omg.CosNaming.NamingContextPackage.CannotProceed;
+import org.omg.CosNaming.NamingContextPackage.CannotProceedHelper;
+import org.omg.CosNaming.NamingContextPackage.InvalidName;
+import org.omg.CosNaming.NamingContextPackage.InvalidNameHelper;
+import org.omg.CosNaming.NamingContextPackage.NotEmpty;
+import org.omg.CosNaming.NamingContextPackage.NotEmptyHelper;
+import org.omg.CosNaming.NamingContextPackage.NotFound;
+import org.omg.CosNaming.NamingContextPackage.NotFoundHelper;
+import org.omg.PortableServer.POA;
+import org.omg.PortableServer.Servant;
+
+/**
+ * The extended naming service servant. After implementing the abstract methods the
+ * instance of this class can be connected to an ORB using POA.
+ * 
+ * @since 1.4
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NamingContextExtPOA
+  extends Servant
+  implements NamingContextExtOperations, InvokeHandler
+
+{
+  /** @inheritDoc */
+  public String[] _all_interfaces(POA poa, byte[] object_ID)
+  {
+    return new String[] { NamingContextExtHelper.id(), NamingContextHelper.id() };
+  }
+
+  /** @inheritDoc */
+  public OutputStream _invoke(String method, InputStream in, ResponseHandler rh)
+  {
+    Integer call_method = (Integer) _NamingContextExtImplBase._methods.get(method);
+
+    if (call_method == null)
+      // The older methods are handled separately.
+      return super_invoke(method, in, rh);
+
+    OutputStream out = null;
+
+    switch (call_method.intValue())
+      {
+        case 0: // to_string
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              String result = null;
+              result = this.to_string(a_name);
+              out = rh.createReply();
+              out.write_string(result);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 1: // to_name
+        {
+          try
+            {
+              String a_name_string = in.read_string();
+              NameComponent[] result = to_name(a_name_string);
+              out = rh.createReply();
+              NameHelper.write(out, result);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 2: // to_url
+        {
+          try
+            {
+              String an_address = in.read_string();
+              String a_name_string = in.read_string();
+              String result = to_url(an_address, a_name_string);
+              out = rh.createReply();
+              out.write_string(result);
+            }
+          catch (InvalidAddress ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidAddressHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 3: // resolve_str
+        {
+          try
+            {
+              String a_name_string = in.read_string();
+              org.omg.CORBA.Object result = resolve_str(a_name_string);
+              out = rh.createReply();
+              org.omg.CORBA.ObjectHelper.write(out, result);
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+      }
+    return out;
+  }
+
+  /**
+   * Handles calls to the methods from the NamingContext. The classes cannot be
+   * directly derived from each other; new public methods would appear.
+   */
+  OutputStream super_invoke(String method, InputStream in, ResponseHandler rh)
+  {
+    OutputStream out = null;
+    Integer call_method = (Integer) _NamingContextImplBase.methods.get(method);
+    if (call_method == null)
+      throw new BAD_OPERATION(Minor.Method, CompletionStatus.COMPLETED_MAYBE);
+
+    switch (call_method.intValue())
+      {
+        case 0: // bind
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              org.omg.CORBA.Object an_object = ObjectHelper.read(in);
+              bind(a_name, an_object);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          catch (AlreadyBound ex)
+            {
+              out = rh.createExceptionReply();
+              AlreadyBoundHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 1: // rebind
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              org.omg.CORBA.Object an_object = ObjectHelper.read(in);
+              rebind(a_name, an_object);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 2: // bind_context
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              NamingContext a_context = NamingContextHelper.read(in);
+              bind_context(a_name, a_context);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          catch (AlreadyBound ex)
+            {
+              out = rh.createExceptionReply();
+              AlreadyBoundHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 3: // rebind_context
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              NamingContext a_context = NamingContextHelper.read(in);
+              rebind_context(a_name, a_context);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 4: // resolve
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              org.omg.CORBA.Object __result = null;
+              __result = resolve(a_name);
+              out = rh.createReply();
+              ObjectHelper.write(out, __result);
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 5: // unbind
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              unbind(a_name);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 6: // new_context
+        {
+          NamingContext __result = null;
+          __result = new_context();
+          out = rh.createReply();
+          NamingContextHelper.write(out, __result);
+          break;
+        }
+
+        case 7: // bind_new_context
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              NamingContext __result = null;
+              __result = bind_new_context(a_name);
+              out = rh.createReply();
+              NamingContextHelper.write(out, __result);
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (AlreadyBound ex)
+            {
+              out = rh.createExceptionReply();
+              AlreadyBoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 8: // destroy
+        {
+          try
+            {
+              destroy();
+              out = rh.createReply();
+            }
+          catch (NotEmpty ex)
+            {
+              out = rh.createExceptionReply();
+              NotEmptyHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 9: // list
+        {
+          int amount = in.read_ulong();
+          BindingListHolder a_list = new BindingListHolder();
+          BindingIteratorHolder an_iter = new BindingIteratorHolder();
+          list(amount, a_list, an_iter);
+          out = rh.createReply();
+          BindingListHelper.write(out, a_list.value);
+          BindingIteratorHelper.write(out, an_iter.value);
+          break;
+        }
+
+        default:
+          throw new BAD_OPERATION(0, CompletionStatus.COMPLETED_MAYBE);
+      }
+
+    return out;
+  }
+
+  /**
+   * Get the CORBA object that delegates calls to this servant. The servant must
+   * be already connected to an ORB.
+   */
+  public NamingContextExt _this()
+  {
+    return NamingContextExtHelper.narrow(super._this_object());
+  }
+
+  /**
+   * Get the CORBA object that delegates calls to this servant. Connect to the
+   * given ORB, if needed.
+   */
+  public NamingContextExt _this(org.omg.CORBA.ORB orb)
+  {
+    return NamingContextExtHelper.narrow(super._this_object(orb));
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/AddressHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/AddressHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/AddressHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/AddressHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,115 @@
+/* AddressHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextExtPackage;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * Helper operations for address. Address is directly mapped into
+ * java String. There is no separate Address class in the implementation.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class AddressHelper
+{
+  /**
+   * The address repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContextExt/Address:1.0";
+
+  /**
+   * Just extracts string from this {@link Any}.
+   */
+  public static String extract(Any a)
+  {
+    return a.extract_string();
+  }
+
+  /**
+   * Get repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Just inserts string into this {@link Any}.
+   */
+  public static void insert(Any a, String that)
+  {
+    a.insert_string(that);
+  }
+
+  /**
+   * Delegates functionality to {@link InputStream#read_string()}.
+   */
+  public static String read(InputStream istream)
+  {
+    return istream.read_string();
+  }
+
+  /**
+   * Return the "Address", alias of String, typecode.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    TypeCode typeCode;
+    typeCode = orb.create_string_tc(0);
+    typeCode = orb.create_alias_tc(id(), "Address", typeCode);
+    return typeCode;
+  }
+
+  /**
+   * Delegates functionality to {@link OutputStream#write_string}.
+   */
+  public static void write(OutputStream ostream, String value)
+  {
+    ostream.write_string(value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddress.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddress.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddress.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddress.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,76 @@
+/* InvalidAddress.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextExtPackage;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * The exception is thrown if the passed address is empty or otherwise invalid.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class InvalidAddress
+  extends UserException
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -3775583235364760385L;
+
+  /**
+   * Create an exception with no message.
+   */
+  public InvalidAddress()
+  {
+  }
+
+  /**
+   * Create an exception with explaining message.
+   *
+   * @since 1.4
+   */
+  public InvalidAddress(String why)
+  {
+    super(why);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,113 @@
+/* InvalidAddressHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextExtPackage;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+* The holder for exception {@link InvalidAddress}.
+*
+* @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+*/
+public abstract class InvalidAddressHelper
+{
+  /**
+   * The {@link InvalidAddress} repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContextExt/InvalidAddress:1.0";
+
+  /**
+   * Extract the exception from the given {@link Any}.
+   */
+  public static InvalidAddress extract(Any a)
+  {
+    return read(a.create_input_stream());
+  }
+
+  /**
+   * Return the exception repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the exception into the given {@link Any}.
+   */
+  public static void insert(Any a, InvalidAddress that)
+  {
+    a.insert_Streamable(new InvalidAddressHolder(that));
+  }
+
+  /**
+   * Read the exception from the given CDR stream.
+   */
+  public static InvalidAddress read(InputStream istream)
+  {
+    InvalidAddress value = new InvalidAddress();
+
+    // Read and discard the repository ID.
+    istream.read_string();
+    return value;
+  }
+
+  /**
+   * Create the type code for this exception.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_struct_tc(InvalidAddressHelper.id(),
+                                       "InvalidAddress", new StructMember[0]);
+  }
+
+  public static void write(OutputStream ostream, InvalidAddress value)
+  {
+    // Write the repository ID.
+    ostream.write_string(id());
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* InvalidAddressHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextExtPackage;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * The holder for the exception {@link InvalidAddress}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class InvalidAddressHolder
+  implements Streamable
+{
+  /**
+   * The stored value.
+   */
+  public InvalidAddress value;
+
+  /**
+   * Create the holder with unitialised value.
+   */
+  public InvalidAddressHolder()
+  {
+  }
+
+  /**
+   * Create the holder, storing the given value.
+   */
+  public InvalidAddressHolder(InvalidAddress initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the stored value, reading it from the given CDR stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = InvalidAddressHelper.read(in);
+  }
+
+  /**
+   * Get the type code of the {@link NotEmpty} exception.
+   */
+  public TypeCode _type()
+  {
+    return InvalidAddressHelper.type();
+  }
+
+  /**
+   * Write the stored value to the given CDR stream.
+   */
+  public void _write(OutputStream out)
+  {
+    InvalidAddressHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/StringNameHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/StringNameHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/StringNameHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/StringNameHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,115 @@
+/* StringNameHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextExtPackage;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * Helper operations for the string name.
+ * The string name is directly mapped into java String.
+ * There is no separate "String name" class in the implementation.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class StringNameHelper
+{
+  /**
+   * The string name repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContextExt/StringName:1.0";
+
+  /**
+   * Just extracts string from this {@link Any}.
+   */
+  public static String extract(Any a)
+  {
+    return a.extract_string();
+  }
+
+  /**
+   * Get repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Just inserts string into this {@link Any}.
+   */
+  public static void insert(Any a, String that)
+  {
+    a.insert_string(that);
+  }
+
+  /**
+   * Delegates functionality to {@link InputStream#read_string()}.
+   */
+  public static String read(InputStream istream)
+  {
+    return istream.read_string();
+  }
+
+  /**
+   * Return the "StringName", alias of String, typecode.
+   */
+  public static TypeCode type()
+  {
+    TypeCode typeCode;
+    typeCode = OrbRestricted.Singleton.create_string_tc(0);
+    typeCode = OrbRestricted.Singleton.create_alias_tc(id(), "StringName", typeCode);
+    return typeCode;
+  }
+
+  /**
+   * Delegates functionality to {@link OutputStream#write_string}.
+   */
+  public static void write(OutputStream ostream, String value)
+  {
+    ostream.write_string(value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/URLStringHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/URLStringHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/URLStringHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/URLStringHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,114 @@
+/* URLStringHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextExtPackage;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * Helper operations for the URL string name.
+ * The URL string is directly mapped into java String.
+ * There is no separate "URL string" class in the implementation.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class URLStringHelper
+{
+  /**
+   * The URL string repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContextExt/URLString:1.0";
+
+  /**
+   * Just extracts string from this {@link Any}.
+   */
+  public static String extract(Any a)
+  {
+    return a.extract_string();
+  }
+
+  /**
+   * Get repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Just inserts string into this {@link Any}.
+   */
+  public static void insert(Any a, String that)
+  {
+    a.insert_string(that);
+  }
+
+  /**
+   * Delegates functionality to {@link InputStream#read_string()}.
+   */
+  public static String read(InputStream istream)
+  {
+    return istream.read_string();
+  }
+
+  /**
+   * Return the "URLString", alias of String, typecode.
+   */
+  public static TypeCode type()
+  {
+    TypeCode typeCode;
+    typeCode = OrbRestricted.Singleton.create_string_tc(0);
+    typeCode = OrbRestricted.Singleton.create_alias_tc(id(), "URLString", typeCode);
+    return typeCode;
+  }
+
+  /**
+   * Delegates functionality to {@link OutputStream#write_string}.
+   */
+  public static void write(OutputStream ostream, String value)
+  {
+    ostream.write_string(value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/package.html
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/package.html?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/package.html (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextExtPackage/package.html Thu Nov  8 16:56:19 2007
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html - describes classes in org.omg.CosNaming.NamingContextExtPackage
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath -  org.omg.CosNaming.NamingContextExtPackage</title></head>
+
+<body>
+<p>Provides several satelitte classes, needed by the naming service
+extensions, added from the version 1.4</p>
+
+</body>
+</html>

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,185 @@
+/* NamingContextHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.Delegate;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for the naming context.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NamingContextHelper
+{
+  /**
+   * The naming context repository id.
+   */
+  private static String _id = "IDL:omg.org/CosNaming/NamingContext:1.0";
+
+  /**
+   * Extract the naming context from the given {@link Any}.
+   */
+  public static NamingContext extract(Any a)
+  {
+    try
+      {
+        return ((NamingContextHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("Naming context expected");
+        bad.initCause(ex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the {@link NamingContext} repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the naming context into the given {@link Any}
+   */
+  public static void insert(Any a, NamingContext that)
+  {
+    a.insert_Streamable(new NamingContextHolder(that));
+  }
+
+  /**
+   * Cast the passed object into the NamingContext. If the
+   * object has a different java type, create an instance
+   * of the NamingContext, using the same delegate, as for
+   * the passed parameter.
+   *
+   * If the object repository Id indicates that it is an instance of
+   *  {@link NamingContextExt} that is a subclass of the NamingContext,
+   * the functionality is  delegated to {@link NamingContextHelper#narrow}.
+   *
+   * @param obj the object to cast.
+   * @return casted instance.
+   *
+   * @throws BAD_PARAM if the passed object is not an instance of
+   * {@link NamingContext} or {@link NamingContextExt}.
+   */
+  public static NamingContext narrow(org.omg.CORBA.Object obj)
+  {
+    if (obj == null)
+      return null;
+    else if (obj instanceof NamingContext)
+      return (NamingContext) obj;
+    else if (obj._is_a(id()))
+      {
+        Delegate delegate = ((ObjectImpl) obj)._get_delegate();
+        return new _NamingContextStub(delegate);
+      }
+    else if (obj._is_a(NamingContextExtHelper.id()))
+      return NamingContextExtHelper.narrow(obj);
+    else
+      throw new BAD_PARAM();
+  }
+  
+  /**
+   * Narrow the given object to the NamingContext. No type-checking is performed
+   * to verify that the object actually supports the requested type. The
+   * {@link BAD_OPERATION} will be thrown if unsupported operations are invoked
+   * on the new returned reference, but no failure is expected at the time of
+   * the unchecked_narrow.
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted NamingContext.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static NamingContext unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    if (obj == null)
+      return null;
+    else if (obj instanceof NamingContext)
+      return (NamingContext) obj;
+    else
+      {
+        // Do not call the _is_a(..).
+        Delegate delegate = ((ObjectImpl) obj)._get_delegate();
+        return new _NamingContextStub(delegate);
+      }    
+  }  
+
+  /**
+   * Read the naming context from the given CDR input stream.
+   */
+  public static NamingContext read(InputStream istream)
+  {
+    return narrow(istream.read_Object(_NamingContextStub.class));
+  }
+
+  /**
+   * Get the type code of the {@link NamingContext}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "NamingContext");
+  }
+
+  /**
+   * Write the given naming context into the given CDR output stream.
+   */
+  public static void write(OutputStream ostream, NamingContext value)
+  {
+    ostream.write_Object(value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* NamingContextHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * A holder for the naming context.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NamingContextHolder
+  implements Streamable
+{
+  /**
+   * A stored value.
+   */
+  public NamingContext value;
+
+  /**
+   * Create the unitialised naming context holder.
+   */
+  public NamingContextHolder()
+  {
+  }
+
+  /**
+   * Create the naming context holder, intialised to the given value.
+   */
+  public NamingContextHolder(NamingContext initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Read the naming context from the given CDR input stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = NamingContextHelper.read(in);
+  }
+
+  /**
+   * Get the typecode of the naming context.
+   */
+  public TypeCode _type()
+  {
+    return NamingContextHelper.type();
+  }
+
+  /**
+   * Write the naming context to the given CDR output stream.
+   */
+  public void _write(OutputStream out)
+  {
+    NamingContextHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,174 @@
+/* NamingContext.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CosNaming.NamingContextPackage.AlreadyBound;
+import org.omg.CosNaming.NamingContextPackage.CannotProceed;
+import org.omg.CosNaming.NamingContextPackage.InvalidName;
+import org.omg.CosNaming.NamingContextPackage.NotEmpty;
+import org.omg.CosNaming.NamingContextPackage.NotFound;
+
+/**
+ * The naming context operations. The naming context can
+ * store (bound) and retrieve (resolve) the named objects or
+ * named child contexts.
+ *
+ * @see NamingContextExtOperations
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface NamingContextOperations
+{
+  /**
+   * Gives the object a name, valid in this context.
+   *
+   * @param a_name the name, being given to the object.
+   * @param an_object the object, being named.
+   *
+   * @throws AlreadyBound if the object is already named in this context.
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   */
+  void bind(NameComponent[] a_name, org.omg.CORBA.Object an_object)
+     throws NotFound, CannotProceed, InvalidName, AlreadyBound;
+
+  /**
+   * Gives a child context name, valid in this context.
+   *
+   * @param a_name the name, being given to the child context.
+   * @param a_context the child context being named.
+   *
+   * @throws AlreadyBound if the child context is already named in
+   * the current context.
+   */
+  void bind_context(NameComponent[] a_name, NamingContext a_context)
+             throws NotFound, CannotProceed, InvalidName, AlreadyBound;
+
+  /**
+   * Create a new context and give it a given name (bound it)
+   * in the current context.
+   *
+   * @param a_name the name being given to the new context.
+   *
+   * @return the newly created context.
+   *
+   * @throws AlreadyBound if the name is already in use.
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   */
+  NamingContext bind_new_context(NameComponent[] a_name)
+                          throws NotFound, AlreadyBound, CannotProceed,
+                                 InvalidName;
+
+  /**
+   * Destroy this context (must be empty).
+   * @throws NotEmpty if the context being destroyed is not empty.
+   */
+  void destroy()
+        throws NotEmpty;
+
+  /**
+   * Iterate over all bindings, defined in this namind context.
+   *
+   * @param amount the maximal number of context to return in the
+   * holder a_list. The remaining bindings are accessible via iterator
+   * an_iter. If the parameter amount is zero, all bindings are accessed only
+   * via this iterator.
+   *
+   * @param a_list the holder, where the returned bindigs are stored.
+   * @param an_iter the iterator that can be used to access the remaining
+   * bindings.
+   */
+  void list(int amount, BindingListHolder a_list, BindingIteratorHolder an_iter);
+
+  /**
+   * Creates a new naming context, not bound to any name.
+   */
+  NamingContext new_context();
+
+  /**
+   * Names or renames the object.
+   *
+   * @param a_name the new name, being given to the object. If
+   * the object is already named in this context, it is renamed.
+   *
+   * @param an_object the object, being named.
+   *
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   */
+  void rebind(NameComponent[] a_name, org.omg.CORBA.Object an_object)
+       throws NotFound, CannotProceed, InvalidName;
+
+  /**
+   * Names or renames the child context.
+   * If the child context is already named in
+   * the current context, it is renamed.
+   *
+   * @param a_name the name, being given to the child context.
+   * @param a_context the child context being named.
+   *
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   */
+  void rebind_context(NameComponent[] a_name, NamingContext a_context)
+               throws NotFound, CannotProceed, InvalidName;
+
+  /**
+   * Get the object, bound to the specified name in this
+   * context.
+   *
+   * @param a_name the object name.
+   *
+   * @return the object, matching this name. The client
+   * usually casts or narrows (using the helper) the returned value
+   * to the more specific type.
+   *
+   * @throws NotFound
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   */
+  org.omg.CORBA.Object resolve(NameComponent[] a_name)
+                        throws NotFound, CannotProceed, InvalidName;
+
+  /**
+   * Removes the name from the binding context.
+   *
+   * @param a_name a name to remove.
+   *
+   * @throws InvalidName if the name has zero length or otherwise invalid.
+   */
+  void unbind(NameComponent[] a_name)
+       throws NotFound, CannotProceed, InvalidName;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPOA.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPOA.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPOA.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPOA.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,367 @@
+/* NamingContextPOA.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.CompletionStatus;
+import org.omg.CORBA.ObjectHelper;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.InvokeHandler;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.ResponseHandler;
+import org.omg.CosNaming.NamingContextPackage.AlreadyBound;
+import org.omg.CosNaming.NamingContextPackage.AlreadyBoundHelper;
+import org.omg.CosNaming.NamingContextPackage.CannotProceed;
+import org.omg.CosNaming.NamingContextPackage.CannotProceedHelper;
+import org.omg.CosNaming.NamingContextPackage.InvalidName;
+import org.omg.CosNaming.NamingContextPackage.InvalidNameHelper;
+import org.omg.CosNaming.NamingContextPackage.NotEmpty;
+import org.omg.CosNaming.NamingContextPackage.NotEmptyHelper;
+import org.omg.CosNaming.NamingContextPackage.NotFound;
+import org.omg.CosNaming.NamingContextPackage.NotFoundHelper;
+import org.omg.PortableServer.POA;
+import org.omg.PortableServer.Servant;
+
+/**
+ * The naming service servant. After implementing the abstract methods the
+ * instance of this class can be connected to an ORB using POA.
+ * 
+ * @since 1.4 
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NamingContextPOA
+  extends Servant
+  implements NamingContextOperations, InvokeHandler
+{
+  /** @inheritDoc */
+  public String[] _all_interfaces(POA poa, byte[] object_ID)
+  {
+    return new String[] { NamingContextHelper.id() };
+  }
+
+  /**
+   * The server calls this method after receiving the request message from
+   * client. The implementation base calls one of its abstract methods to
+   * perform the requested operation.
+   *
+   * @param method the method being invoked.
+   * @param in the stream to read parameters from.
+   * @param rh the handler to get a stream for writing a response.
+   *
+   * @return the stream, returned by the handler.
+   */
+  public OutputStream _invoke(String method, InputStream in, ResponseHandler rh)
+  {
+    OutputStream out = null;
+    Integer call_method = (Integer) _NamingContextImplBase.methods.get(method);
+    if (call_method == null)
+      throw new BAD_OPERATION(Minor.Method, CompletionStatus.COMPLETED_MAYBE);
+
+    switch (call_method.intValue())
+      {
+        case 0: // bind
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              org.omg.CORBA.Object an_object = ObjectHelper.read(in);
+              bind(a_name, an_object);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          catch (AlreadyBound ex)
+            {
+              out = rh.createExceptionReply();
+              AlreadyBoundHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 1: // rebind
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              org.omg.CORBA.Object an_object = ObjectHelper.read(in);
+              rebind(a_name, an_object);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 2: // bind_context
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              NamingContext a_context = NamingContextHelper.read(in);
+              bind_context(a_name, a_context);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          catch (AlreadyBound ex)
+            {
+              out = rh.createExceptionReply();
+              AlreadyBoundHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 3: // rebind_context
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              NamingContext a_context = NamingContextHelper.read(in);
+              rebind_context(a_name, a_context);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 4: // resolve
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              org.omg.CORBA.Object __result = null;
+              __result = resolve(a_name);
+              out = rh.createReply();
+              ObjectHelper.write(out, __result);
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 5: // unbind
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              unbind(a_name);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 6: // new_context
+        {
+          NamingContext __result = null;
+          __result = new_context();
+          out = rh.createReply();
+          NamingContextHelper.write(out, __result);
+          break;
+        }
+
+        case 7: // bind_new_context
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              NamingContext __result = null;
+              __result = bind_new_context(a_name);
+              out = rh.createReply();
+              NamingContextHelper.write(out, __result);
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (AlreadyBound ex)
+            {
+              out = rh.createExceptionReply();
+              AlreadyBoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 8: // destroy
+        {
+          try
+            {
+              destroy();
+              out = rh.createReply();
+            }
+          catch (NotEmpty ex)
+            {
+              out = rh.createExceptionReply();
+              NotEmptyHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 9: // list
+        {
+          int amount = in.read_ulong();
+          BindingListHolder a_list = new BindingListHolder();
+          BindingIteratorHolder an_iter = new BindingIteratorHolder();
+          list(amount, a_list, an_iter);
+          out = rh.createReply();
+          BindingListHelper.write(out, a_list.value);
+          BindingIteratorHelper.write(out, an_iter.value);
+          break;
+        }
+
+        default:
+          throw new BAD_OPERATION(0, CompletionStatus.COMPLETED_MAYBE);
+      }
+
+    return out;
+  }
+
+  /**
+   * Get the CORBA object that delegates calls to this servant. The servant must
+   * be already connected to an ORB.
+   */
+  public NamingContext _this()
+  {
+    return NamingContextHelper.narrow(super._this_object());
+  }
+
+  /**
+   * Get the CORBA object that delegates calls to this servant. Connect to the
+   * given ORB, if needed.
+   */
+  public NamingContext _this(org.omg.CORBA.ORB orb)
+  {
+    return NamingContextHelper.narrow(super._this_object(orb));
+  }
+
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBound.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBound.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBound.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBound.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,75 @@
+/* AlreadyBound.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * The exception is thrown in response to bind the same object
+ * into the same context repeatedly under the different name.
+ * The object can have only one name in the context.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class AlreadyBound
+  extends UserException
+  implements IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -5456929050527586560L;
+
+  /**
+   * Creates the expection with no details.
+   */
+  public AlreadyBound()
+  {
+  }
+
+  /**
+   * Creates the exception, explaining the reason.
+   * @param why
+   */
+  public AlreadyBound(String why)
+  {
+    super(why);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,127 @@
+/* AlreadyBoundHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for the {@link AlreadyBound} user exception.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class AlreadyBoundHelper
+{
+  /**
+   * The {@link AlreadyBound} repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContext/AlreadyBound:1.0";
+
+  /**
+   * Extract the exception from the given {@link Any}.
+   */
+  public static AlreadyBound extract(Any a)
+  {
+    try
+      {
+        return ((AlreadyBoundHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION();
+        bad.initCause(ex);
+        bad.minor = Minor.Any;
+        throw bad;
+      }
+  }
+
+  /**
+   * Return the exception repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the exception into the given {@link Any}.
+   */
+  public static void insert(Any a, AlreadyBound that)
+  {
+    a.insert_Streamable(new AlreadyBoundHolder(that));
+  }
+
+  /**
+   * Read the exception from the given CDR stream.
+   */
+  public static AlreadyBound read(InputStream istream)
+  {
+    AlreadyBound value = new AlreadyBound();
+
+    // Read and discard the repository ID.
+    istream.read_string();
+    return value;
+  }
+
+  /**
+   * Create the type code for this exception.
+   */
+  public static TypeCode type()
+  {
+    return
+        OrbRestricted.Singleton.create_struct_tc(id(), "AlreadyBound", new StructMember[ 0 ]);
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   */
+  public static void write(OutputStream ostream, AlreadyBound value)
+  {
+    ostream.write_string(id());
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* AlreadyBoundHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * The holder for class {@link AlreadyBound} exception.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class AlreadyBoundHolder
+  implements Streamable
+{
+  /**
+   * The stored value.
+   */
+  public AlreadyBound value;
+
+  /**
+   * Create the holder with unitialised value.
+   */
+  public AlreadyBoundHolder()
+  {
+  }
+
+  /**
+   * Create the holder, storing the given value.
+   */
+  public AlreadyBoundHolder(AlreadyBound initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the stored value, reading it from the given CDR stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = AlreadyBoundHelper.read(in);
+  }
+
+  /**
+   * Get the type code of the {@link NotEmpty} exception.
+   */
+  public TypeCode _type()
+  {
+    return AlreadyBoundHelper.type();
+  }
+
+  /**
+   * Write the stored value to the given CDR stream.
+   */
+  public void _write(OutputStream out)
+  {
+    AlreadyBoundHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceed.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceed.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceed.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceed.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,102 @@
+/* CannotProceed.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+import org.omg.CosNaming.NameComponent;
+import org.omg.CosNaming.NamingContext;
+
+/**
+ * The exception is raised when the naming service has
+ * given up for some reason.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class CannotProceed
+  extends UserException
+  implements IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -8627405252527310782L;
+
+  /**
+   * The relevant naming contex.
+   */
+  public NamingContext cxt;
+
+  /**
+   * Contains the remainder of the non working name.
+   */
+  public NameComponent[] rest_of_name;
+
+  /**
+   * Creates the unitialised exception.
+   */
+  public CannotProceed()
+  {
+  }
+
+  /**
+   * Creates an exception with the fields, intialised to the
+   * given values.
+   */
+  public CannotProceed(NamingContext _cxt, NameComponent[] _rest_of_name)
+  {
+    cxt = _cxt;
+    rest_of_name = _rest_of_name;
+  }
+
+  /**
+   * Create an exception with the initialised fields and explaining
+   * message.
+   *
+   * @since 1.4
+   */
+  public CannotProceed(String why, NamingContext _cxt,
+                       NameComponent[] _rest_of_name
+                      )
+  {
+    super(why);
+    cxt = _cxt;
+    rest_of_name = _rest_of_name;
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceedHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceedHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceedHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceedHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,144 @@
+/* CannotProceedHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CosNaming.NameComponentHelper;
+import org.omg.CosNaming.NameHelper;
+import org.omg.CosNaming.NamingContextHelper;
+
+/**
+ * The helper operations for {@link CannotProceed}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class CannotProceedHelper
+{
+  /**
+   * The {@link CannotProceed} repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContext/CannotProceed:1.0";
+
+  /**
+   * Extract the exception from the given {@link Any}.
+   */
+  public static CannotProceed extract(Any a)
+  {
+    try
+      {
+        return ((CannotProceedHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION();
+        bad.initCause(ex);
+        bad.minor = Minor.Any;
+        throw bad;
+      }
+  }
+
+  /**
+   * Return the exception repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the exception into the given {@link Any}.
+   */
+  public static void insert(Any a, CannotProceed that)
+  {
+    a.insert_Streamable(new CannotProceedHolder(that));
+  }
+
+  /**
+   * Read the exception from the given CDR stream.
+   */
+  public static CannotProceed read(InputStream istream)
+  {
+    CannotProceed value = new CannotProceed();
+
+    // read and discard the repository ID
+    istream.read_string();
+    value.cxt = NamingContextHelper.read(istream);
+    value.rest_of_name = NameHelper.read(istream);
+    return value;
+  }
+
+  /**
+   * Create the type code for this exception.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    
+    StructMember[] members = new StructMember[ 2 ];
+    TypeCode member;
+    member = NamingContextHelper.type();
+    members [ 0 ] = new StructMember("cxt", member, null);
+    member = NameComponentHelper.type();
+    member = orb.create_sequence_tc(0, member);
+    member = orb.create_alias_tc(NameHelper.id(), "Name", member);
+    members [ 1 ] = new StructMember("rest_of_name", member, null);
+    return orb.create_struct_tc(id(), "CannotProceed", members);
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   */
+  public static void write(OutputStream ostream, CannotProceed value)
+  {
+    // write the repository ID
+    ostream.write_string(id());
+    NamingContextHelper.write(ostream, value.cxt);
+    NameHelper.write(ostream, value.rest_of_name);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceedHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceedHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceedHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/CannotProceedHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* CannotProceedHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * The holder for exception {@link CannotProceed}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class CannotProceedHolder
+  implements Streamable
+{
+  /**
+   * The stored value.
+   */
+  public CannotProceed value;
+
+  /**
+   * Create the holder with unitialised value.
+   */
+  public CannotProceedHolder()
+  {
+  }
+
+  /**
+   * Create the holder, storing the given value.
+   */
+  public CannotProceedHolder(CannotProceed initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the stored value, reading it from the given CDR stream.
+   */
+  public void _read(InputStream i)
+  {
+    value = CannotProceedHelper.read(i);
+  }
+
+  /**
+   * Get the type code of the {@link NotEmpty} exception.
+   */
+  public TypeCode _type()
+  {
+    return CannotProceedHelper.type();
+  }
+
+  /**
+   * Write the stored value to the given CDR stream.
+   */
+  public void _write(OutputStream o)
+  {
+    CannotProceedHelper.write(o, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidName.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidName.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidName.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidName.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,76 @@
+/* InvalidName.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+import org.omg.CosNaming.NameComponent;
+
+/**
+ * The exception is thrown if the name has the zero length or is otherwise
+ * invalid.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class InvalidName
+  extends UserException
+  implements IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 786404864997961704L;
+
+  /**
+   * The default constructor.
+   */
+  public InvalidName()
+  {
+  }
+
+  /**
+   * Creates an exception with explanation, why the name is invalid.
+   *
+   * @param why the string, explaining why the name is invalid.
+   */
+  public InvalidName(String why)
+  {
+    super(why);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidNameHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidNameHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidNameHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidNameHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,127 @@
+/* InvalidNameHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for the {@link InvalidName}
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class InvalidNameHelper
+{
+  /**
+   * The {@link InvalidName} repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContext/InvalidName:1.0";
+
+  /**
+   * Extract the exception from the given {@link Any}.
+   */
+  public static InvalidName extract(Any a)
+  {
+    try
+      {
+        return ((InvalidNameHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION();
+        bad.initCause(ex);
+        bad.minor = Minor.Any;
+        throw bad;
+      }
+  }
+
+  /**
+   * Return the exception repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the exception into the given {@link Any}.
+   */
+  public static void insert(Any a, InvalidName that)
+  {
+    a.insert_Streamable(new InvalidNameHolder(that));
+  }
+
+  /**
+   * Read the exception from the given CDR stream.
+   */
+  public static InvalidName read(InputStream istream)
+  {
+    InvalidName value = new InvalidName();
+
+    // Read and discard the repository ID.
+    istream.read_string();
+    return value;
+  }
+
+  /**
+   * Create the type code for this exception.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_struct_tc(id(), 
+      "InvalidName", new StructMember[0]);
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   */
+  public static void write(OutputStream ostream, InvalidName value)
+  {
+    ostream.write_string(id());
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidNameHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidNameHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidNameHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/InvalidNameHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* InvalidNameHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * The holder for exception {@link InvalidName}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class InvalidNameHolder
+  implements Streamable
+{
+  /**
+   * The stored value.
+   */
+  public InvalidName value;
+
+  /**
+   * Create the holder with unitialised value.
+   */
+  public InvalidNameHolder()
+  {
+  }
+
+  /**
+   * Create the holder, storing the given value.
+   */
+  public InvalidNameHolder(InvalidName initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the stored value, reading it from the given CDR stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = InvalidNameHelper.read(in);
+  }
+
+  /**
+   * Get the type code of the {@link NotEmpty} exception.
+   */
+  public TypeCode _type()
+  {
+    return InvalidNameHelper.type();
+  }
+
+  /**
+   * Write the stored value to the given CDR stream.
+   */
+  public void _write(OutputStream out)
+  {
+    InvalidNameHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmpty.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmpty.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmpty.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmpty.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,74 @@
+/* NotEmpty.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * This exception is thrown in response to the attemt to destroy
+ * the non tempty context. Only the empty context can be destroyed.
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NotEmpty
+  extends UserException
+  implements IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 7120362687417045881L;
+
+  /**
+   * Create an exception with no message.
+   */
+  public NotEmpty()
+  {
+  }
+
+  /**
+   * Create an exception with explaining message.
+   *
+   * @since 1.4
+   */
+  public NotEmpty(String why)
+  {
+    super(why);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmptyHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmptyHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmptyHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmptyHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,127 @@
+/* NotEmptyHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for the {@link NotEmpty}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NotEmptyHelper
+{
+  /**
+   * The {@link NotEmpty} repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContext/NotEmpty:1.0";
+
+  /**
+   * Extract the exception from the given {@link Any}.
+   */
+  public static NotEmpty extract(Any a)
+  {
+    try
+      {
+        return ((NotEmptyHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION();
+        bad.initCause(ex);
+        bad.minor = Minor.Any;
+        throw bad;
+      }
+  }
+
+  /**
+   * Return the exception repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the exception into the given {@link Any}.
+   */
+  public static void insert(Any a, NotEmpty that)
+  {
+    a.insert_Streamable(new NotEmptyHolder(that));
+  }
+
+  /**
+   * Read the exception from the given CDR stream.
+   */
+  public static NotEmpty read(InputStream istream)
+  {
+    NotEmpty value = new NotEmpty();
+
+    // Read and discard the repository ID.
+    istream.read_string();
+    return value;
+  }
+
+  /**
+   * Create the type code for this exception.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_struct_tc(id(), 
+      "NotEmpty", new StructMember[0]);
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   */
+  public static void write(OutputStream ostream, NotEmpty value)
+  {
+    ostream.write_string(id());
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmptyHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmptyHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmptyHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotEmptyHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* NotEmptyHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ *  The holder for exception {@link NotEmpty}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NotEmptyHolder
+  implements Streamable
+{
+  /**
+   * The stored value.
+   */
+  public NotEmpty value;
+
+  /**
+   * Create the holder with unitialised value.
+   */
+  public NotEmptyHolder()
+  {
+  }
+
+  /**
+   * Create the holder, storing the given value.
+   */
+  public NotEmptyHolder(NotEmpty initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the stored value, reading it from the given CDR stream.
+   */
+  public void _read(InputStream i)
+  {
+    value = NotEmptyHelper.read(i);
+  }
+
+  /**
+   * Get the type code of the {@link NotEmpty} exception.
+   */
+  public TypeCode _type()
+  {
+    return NotEmptyHelper.type();
+  }
+
+  /**
+   * Write the stored value to the given CDR stream.
+   */
+  public void _write(OutputStream o)
+  {
+    NotEmptyHelper.write(o, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFound.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFound.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFound.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFound.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,101 @@
+/* NotFound.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+import org.omg.CosNaming.NameComponent;
+
+/**
+* The exception is thrown when the binding being searched does not exist
+* or has the wrong type
+*
+* @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+*/
+public final class NotFound
+  extends UserException
+  implements IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -7539098836265502514L;
+
+  /**
+   * The reason, explaining, why the binding cannot be found.
+   * This might be either the missing node or the wrong binding type.
+   */
+  public NotFoundReason why;
+
+  /**
+   * Contains the remainder of the non working name.
+   */
+  public NameComponent[] rest_of_name;
+
+  /**
+   * Creates the exception with unitialised fields.
+   */
+  public NotFound()
+  {
+  }
+
+  /**
+   * Creates the exception, intialising the fields to the given values.
+   */
+  public NotFound(NotFoundReason _why, NameComponent[] _rest_of_name)
+  {
+    why = _why;
+    rest_of_name = _rest_of_name;
+  }
+
+  /**
+   * Creates the exception, intialising the fields to the given values and
+   * also providing the explaining string.
+   *
+   * @since 1.4
+   */
+  public NotFound(String explanation, NotFoundReason _why,
+                  NameComponent[] _rest_of_name
+                 )
+  {
+    super(explanation);
+    why = _why;
+    rest_of_name = _rest_of_name;
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,142 @@
+/* NotFoundHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CosNaming.NameComponentHelper;
+import org.omg.CosNaming.NameHelper;
+
+/**
+ * The helper operations for {@link NotFound}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NotFoundHelper
+{
+  /**
+   * The {@link NotFound} repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContext/NotFound:1.0";
+
+  /**
+   * Extract the exception from the given {@link Any}.
+   */
+  public static NotFound extract(Any a)
+  {
+    try
+      {
+        return ((NotFoundHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION();
+        bad.initCause(ex);
+        bad.minor = Minor.Any;
+        throw bad;
+      }
+  }
+
+  /**
+   * Return the exception repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the exception into the given {@link Any}.
+   */
+  public static void insert(Any a, NotFound that)
+  {
+    a.insert_Streamable(new NotFoundHolder(that));
+  }
+
+  /**
+   * Read the exception from the given CDR stream.
+   */
+  public static NotFound read(InputStream istream)
+  {
+    NotFound value = new NotFound();
+
+    // Read and discard the repository ID.
+    istream.read_string();
+    value.why = NotFoundReasonHelper.read(istream);
+    value.rest_of_name = NameHelper.read(istream);
+    return value;
+  }
+
+  /**
+   * Create the type code for this exception.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    
+    StructMember[] members = new StructMember[ 2 ];
+    TypeCode member = null;
+    member = NotFoundReasonHelper.type();
+    members [ 0 ] = new StructMember("why", member, null);
+    member = NameComponentHelper.type();
+    member = orb.create_sequence_tc(0, member);
+    member = orb.create_alias_tc(NameHelper.id(), "Name", member);
+    members [ 1 ] = new StructMember("rest_of_name", member, null);
+    return orb.create_struct_tc(id(), "NotFound", members);
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   */
+  public static void write(OutputStream ostream, NotFound value)
+  {
+    ostream.write_string(id());
+    NotFoundReasonHelper.write(ostream, value.why);
+    NameHelper.write(ostream, value.rest_of_name);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,97 @@
+/* NotFoundHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * The holder for the {@link NotFound} exception.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NotFoundHolder
+  implements Streamable
+{
+  /**
+   * The stored value.
+   */
+  public NotFound value;
+
+  /**
+   * Create the holder with unitialised value.
+   */
+  public NotFoundHolder()
+  {
+  }
+
+  /**
+   * Create the holder, storing the given value.
+   */
+  public NotFoundHolder(NotFound initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Fill in the stored value, reading it from the given CDR stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = NotFoundHelper.read(in);
+  }
+
+  /**
+   * Get the type code of the {@link NotFound} exception.
+   */
+  public TypeCode _type()
+  {
+    return NotFoundHelper.type();
+  }
+
+  /**
+   * Write the stored value to the given CDR stream.
+   */
+  public void _write(OutputStream out)
+  {
+    NotFoundHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReason.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReason.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReason.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReason.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,134 @@
+/* NotFoundReason.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Represents the reason (explanation), why the binding cannot be found.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class NotFoundReason
+  implements IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -5689237060527596081L;
+
+  /**
+   * The code for reason, when the node is missing.
+   */
+  public static final int _missing_node = 0;
+
+  /**
+   * The code for reason, when the binding type is object when
+   * it should be a context.
+   */
+  public static final int _not_context = 1;
+
+  /**
+   * The code for reason, when the binding type is context when
+   * it should be an object.
+   */
+  public static final int _not_object = 2;
+
+  /**
+   * The reason, when the node is missing.
+   */
+  public static final NotFoundReason missing_node =
+    new NotFoundReason(_missing_node);
+
+  /**
+   * The reason, when the binding type is object when it should be
+   * a context.
+   */
+  public static final NotFoundReason not_context =
+    new NotFoundReason(_not_context);
+
+  /**
+   * The reason, when the binding type is context when it should be
+   * and object.
+   */
+  public static final NotFoundReason not_object =
+    new NotFoundReason(_not_object);
+
+  /**
+   * The reason code for this instance.
+   */
+  private int value;
+
+  protected NotFoundReason(int a_value)
+  {
+    value = a_value;
+  }
+
+  /**
+   * Get the reason object from the reason code.
+   *
+   * @throws BAD_PARAM for unsupported code.
+   */
+  public static NotFoundReason from_int(int value)
+  {
+    switch (value)
+      {
+        case _missing_node :
+          return missing_node;
+
+        case _not_context :
+          return not_context;
+
+        case _not_object :
+          return not_object;
+
+        default :
+          throw new BAD_PARAM("Unsupported not found reason: " + value);
+      }
+  }
+
+  /**
+   * Get the reason code for this reason of not finding.
+   */
+  public int value()
+  {
+    return value;
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,129 @@
+/* NotFoundReasonHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link NotFoundReason}
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NotFoundReasonHelper
+{
+  /**
+   * The {@link AlreadyBound} repository id.
+   */
+  private static String _id =
+    "IDL:omg.org/CosNaming/NamingContext/NotFoundReason:1.0";
+
+  /**
+   * Extract the exception from the given {@link Any}.
+   */
+  public static NotFoundReason extract(Any a)
+  {
+    try
+      {
+        return ((NotFoundReasonHolder) a.extract_Streamable()).value;
+      }
+    catch (ClassCastException ex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION();
+        bad.initCause(ex);
+        bad.minor = Minor.Any;
+        throw bad;
+      }
+  }
+
+  /**
+   * Return the exception repository id.
+   */
+  public static String id()
+  {
+    return _id;
+  }
+
+  /**
+   * Insert the exception into the given {@link Any}.
+   */
+  public static void insert(Any a, NotFoundReason that)
+  {
+    a.insert_Streamable(new NotFoundReasonHolder(that));
+  }
+
+  /**
+   * Read the exception from the given CDR stream.
+   */
+  public static NotFoundReason read(InputStream istream)
+  {
+    return NotFoundReason.from_int(istream.read_long());
+  }
+
+  /**
+   * Create the type code for this exception.
+   */
+  public static TypeCode type()
+  {
+    return
+    OrbRestricted.Singleton.create_enum_tc(id(), "NotFoundReason",
+                              new String[]
+                                         {
+                                          "missing_node", 
+                                          "not_context", 
+                                          "not_object"
+                                         }
+    );
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   */
+  public static void write(OutputStream ostream, NotFoundReason value)
+  {
+    ostream.write_long(value.value());
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHolder.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHolder.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHolder.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHolder.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,98 @@
+/* NotFoundReasonHolder.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming.NamingContextPackage;
+
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+* The holder for class {@link NotFoundReason}.
+*
+* @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+*/
+public final class NotFoundReasonHolder
+  implements Streamable
+{
+  /**
+   * The stored value.
+   */
+  public NotFoundReason value;
+
+  /**
+   * Create the holder with unitialized value.
+   */
+  public NotFoundReasonHolder()
+  {
+  }
+
+  /**
+   * Create the holder, storing the given intial value.
+   */
+  public NotFoundReasonHolder(NotFoundReason initialValue)
+  {
+    value = initialValue;
+  }
+
+  /**
+   * Read the holder from the CDR input stream.
+   */
+  public void _read(InputStream in)
+  {
+    value = NotFoundReasonHelper.read(in);
+  }
+
+  /**
+   * Get the type code of {@link NotFoundReason}.
+   * @return
+   */
+  public TypeCode _type()
+  {
+    return NotFoundReasonHelper.type();
+  }
+
+  /**
+   * Write the holder to the CDR output stream.
+   */
+  public void _write(OutputStream out)
+  {
+    NotFoundReasonHelper.write(out, value);
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/package.html
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/package.html?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/package.html (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/NamingContextPackage/package.html Thu Nov  8 16:56:19 2007
@@ -0,0 +1,46 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html - describes classes in org.omg.CosNaming.NamingContextPackage
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath -  org.omg.CosNaming.NamingContextExtPackage</title></head>
+
+<body>
+<p>Provides exceptions and several other satelitte classes, needed by the naming service.</p>
+
+</body>
+</html>

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_BindingIteratorImplBase.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_BindingIteratorImplBase.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_BindingIteratorImplBase.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_BindingIteratorImplBase.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,139 @@
+/* _BindingIteratorImplBase.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.BooleanHolder;
+import org.omg.CORBA.CompletionStatus;
+import org.omg.CORBA.DynamicImplementation;
+import org.omg.CORBA.ServerRequest;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.InvokeHandler;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.ResponseHandler;
+import org.omg.CORBA.portable.Streamable;
+
+/**
+ * The binding iterator implementation base.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class _BindingIteratorImplBase
+  extends DynamicImplementation
+  implements BindingIterator, InvokeHandler
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 3472591176635005503L;
+
+  /**
+   * The binding interator repository id.
+   */
+  private static String[] ids = { BindingIteratorHelper.id() };
+
+  /**
+   * Return the list of repository ids.
+   */
+  public String[] _ids()
+  {
+    return ids;
+  }
+
+  /**
+   * Call the required method.
+   */
+  public OutputStream _invoke(String method, InputStream in, ResponseHandler rh)
+  {
+    OutputStream out = null;
+
+    // We suppose that the next_n should be the most popular.
+    if (method.equals("next_n"))
+      {
+        // The next_n has been invoked.
+        int amount = in.read_ulong();
+        BindingListHolder a_list = new BindingListHolder();
+
+        boolean result = next_n(amount, a_list);
+
+        out = rh.createReply();
+        out.write_boolean(result);
+        BindingListHelper.write(out, a_list.value);
+      }
+    else if (method.equals("next_one"))
+      {
+        // The next_one has been invoked.
+        BindingHolder a_binding = new BindingHolder();
+
+        boolean result = next_one(a_binding);
+
+        out = rh.createReply();
+        out.write_boolean(result);
+        BindingHelper.write(out, a_binding.value);
+      }
+    else if (method.equals("destroy"))
+      {
+        // The destroy has been invoked.
+        destroy();
+        out = rh.createReply();
+      }
+    else
+      throw new BAD_OPERATION(method, Minor.Method, 
+        CompletionStatus.COMPLETED_MAYBE);
+
+    return out;
+  }
+
+  /**
+   * The obsolete invocation using server request. Implemented for
+   * compatibility reasons, but is it more effectinve to use
+   * {@link #_invoke}.
+   *
+   * @param request a server request.
+   */
+  public void invoke(ServerRequest request)
+  {
+    // "destroy" has a void return type, the two other methods - boolean.
+    Streamable result =
+      request.operation().equals("destroy") ? null : new BooleanHolder();
+    gnu.CORBA.ServiceRequestAdapter.invoke(request, this, result);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_BindingIteratorStub.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_BindingIteratorStub.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_BindingIteratorStub.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_BindingIteratorStub.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,203 @@
+/* _BindingIteratorStub.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.ApplicationException;
+import org.omg.CORBA.portable.Delegate;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.RemarshalException;
+
+/**
+ * The binding interator stub (proxy), used on the client side.
+ * The BindingIterator methods contains the code for remote invocaton.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class _BindingIteratorStub
+  extends ObjectImpl
+  implements BindingIterator
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 8969257760771186704L;
+
+  /**
+   * The object can be destroyed only once.
+   */
+  private boolean destroyed;
+
+  /**
+   * Create the stub.
+   */
+  public _BindingIteratorStub()
+  {
+    super();
+  }
+
+  /**
+   * Create the stub that used the given delegate.
+   */
+  _BindingIteratorStub(Delegate delegate)
+  {
+    super();
+    _set_delegate(delegate);
+  }
+
+  /**
+   * Get an array of repository ids for this object.
+   */
+  public String[] _ids()
+  {
+    return new String[] { BindingIteratorHelper.id() };
+  }
+
+  /**
+   * Returns true if the object has been destroyed.
+   */
+  public boolean _non_existent()
+  {
+    return destroyed;
+  }
+
+  /**
+   * Destroys the object on the server side.
+   * The destruction message is sent only once, even if the method is
+   * called repeatedly.
+   */
+  public void destroy()
+  {
+    if (destroyed)
+      return;
+
+    InputStream _in = null;
+    try
+      {
+        OutputStream _out = _request("destroy", true);
+        _in = _invoke(_out);
+        destroyed = true;
+      }
+    catch (ApplicationException _ex)
+      {
+        _in = _ex.getInputStream();
+        throw new MARSHAL(_ex.getId());
+      }
+    catch (RemarshalException _rm)
+      {
+        destroy();
+      }
+    finally
+      {
+        _releaseReply(_in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public boolean next_n(int amount, BindingListHolder a_list)
+  {
+    InputStream _in = null;
+    try
+      {
+        OutputStream _out = _request("next_n", true);
+        _out.write_ulong(amount);
+        _in = _invoke(_out);
+
+        boolean result = _in.read_boolean();
+        a_list.value = BindingListHelper.read(_in);
+        return result;
+      }
+    catch (ApplicationException _ex)
+      {
+        _in = _ex.getInputStream();
+        throw new MARSHAL(_ex.getId());
+      }
+    catch (RemarshalException _rm)
+      {
+        return next_n(amount, a_list);
+      }
+    finally
+      {
+        _releaseReply(_in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public boolean next_one(BindingHolder a_binding)
+  {
+    InputStream _in = null;
+    try
+      {
+        OutputStream _out = _request("next_one", true);
+        _in = _invoke(_out);
+
+        boolean result = _in.read_boolean();
+        a_binding.value = BindingHelper.read(_in);
+        return result;
+      }
+    catch (ApplicationException _ex)
+      {
+        _in = _ex.getInputStream();
+        throw new MARSHAL(_ex.getId());
+      }
+    catch (RemarshalException _rm)
+      {
+        return next_one(a_binding);
+      }
+    finally
+      {
+        _releaseReply(_in);
+      }
+  }
+
+  /**
+   * Destroys the iterator instance on the server side, calling
+   * {@link #destroy()}.
+   *
+   * @throws java.lang.Throwable
+   */
+  protected void finalize()
+                   throws java.lang.Throwable
+  {
+    destroy();
+    super.finalize();
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextExtImplBase.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextExtImplBase.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextExtImplBase.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextExtImplBase.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,237 @@
+/* _NamingContextExtImplBase.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.ObjectHolder;
+import org.omg.CORBA.ServerRequest;
+import org.omg.CORBA.StringHolder;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.InvokeHandler;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.ResponseHandler;
+import org.omg.CORBA.portable.Streamable;
+import org.omg.CosNaming.NamingContextExtPackage.InvalidAddress;
+import org.omg.CosNaming.NamingContextExtPackage.InvalidAddressHelper;
+import org.omg.CosNaming.NamingContextPackage.CannotProceed;
+import org.omg.CosNaming.NamingContextPackage.CannotProceedHelper;
+import org.omg.CosNaming.NamingContextPackage.InvalidName;
+import org.omg.CosNaming.NamingContextPackage.InvalidNameHelper;
+import org.omg.CosNaming.NamingContextPackage.NotFound;
+import org.omg.CosNaming.NamingContextPackage.NotFoundHelper;
+
+import java.util.Hashtable;
+
+/**
+ * The extended naming context implementation base.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class _NamingContextExtImplBase
+  extends _NamingContextImplBase
+  implements NamingContextExt, InvokeHandler
+{
+  static Hashtable _methods = new Hashtable();
+
+  static
+  {
+    _methods.put("to_string", new java.lang.Integer(0));
+    _methods.put("to_name", new java.lang.Integer(1));
+    _methods.put("to_url", new java.lang.Integer(2));
+    _methods.put("resolve_str", new java.lang.Integer(3));
+  }
+
+  /**
+   * This stub can be the base of the two CORBA objects, so it
+   * has two repository ids.
+   */
+  private static String[] __ids =
+    { NamingContextExtHelper.id(), NamingContextHelper.id() };
+
+  /**
+   * Return the array of repository ids for this object.
+   * This stub can be the base of the two CORBA objects, so it
+   * has two repository ids, for {@link NamingContext} and
+   * for {@link NamingContextExt}.
+   */
+  public String[] _ids()
+  {
+    return __ids;
+  }
+
+  public OutputStream _invoke(String method, InputStream in, ResponseHandler rh)
+  {
+    Integer call_method = (Integer) _methods.get(method);
+
+    if (call_method == null)
+
+      // The older methods are handled by the parent class.
+      return super._invoke(method, in, rh);
+
+    OutputStream out = null;
+
+    switch (call_method.intValue())
+      {
+        case 0 : // to_string
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              String result = null;
+              result = this.to_string(a_name);
+              out = rh.createReply();
+              out.write_string(result);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 1 : // to_name
+        {
+          try
+            {
+              String a_name_string = in.read_string();
+              NameComponent[] result = to_name(a_name_string);
+              out = rh.createReply();
+              NameHelper.write(out, result);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 2 : // to_url
+        {
+          try
+            {
+              String an_address = in.read_string();
+              String a_name_string = in.read_string();
+              String result = to_url(an_address, a_name_string);
+              out = rh.createReply();
+              out.write_string(result);
+            }
+          catch (InvalidAddress ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidAddressHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 3 : // resolve_str
+        {
+          try
+            {
+              String a_name_string = in.read_string();
+              org.omg.CORBA.Object result = resolve_str(a_name_string);
+              out = rh.createReply();
+              org.omg.CORBA.ObjectHelper.write(out, result);
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+      }
+    return out;
+  }
+
+  /**
+   * The obsolete invocation using server request. Implemented for
+   * compatibility reasons, but is it more effectinve to use
+   * {@link #_invoke}.
+   *
+   * @param request a server request.
+   */
+  public void invoke(ServerRequest request)
+  {
+    Streamable result = null;
+
+    Integer call_method = (Integer) _methods.get(request.operation());
+
+    if (call_method == null)
+      {
+        super.invoke(request);
+        return;
+      }
+
+    switch (call_method.intValue())
+      {
+        case 0 : // to_string, String
+          result = new StringHolder();
+          break;
+
+        case 1 : // to_name, Name
+          result = new NameHolder();
+          break;
+
+        case 2 : // to_url, String
+          result = new StringHolder();
+          break;
+
+        case 3 : // resolve_str, Object
+          result = new ObjectHolder();
+          break;
+      }
+    gnu.CORBA.ServiceRequestAdapter.invoke(request, this, result);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextExtStub.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextExtStub.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextExtStub.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextExtStub.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,210 @@
+/* _NamingContextExtStub.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.NamingService.NameTransformer;
+
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.ObjectHelper;
+import org.omg.CORBA.portable.ApplicationException;
+import org.omg.CORBA.portable.Delegate;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.RemarshalException;
+import org.omg.CosNaming.NamingContextExtPackage.AddressHelper;
+import org.omg.CosNaming.NamingContextExtPackage.InvalidAddress;
+import org.omg.CosNaming.NamingContextExtPackage.InvalidAddressHelper;
+import org.omg.CosNaming.NamingContextExtPackage.StringNameHelper;
+import org.omg.CosNaming.NamingContextExtPackage.URLStringHelper;
+import org.omg.CosNaming.NamingContextPackage.CannotProceed;
+import org.omg.CosNaming.NamingContextPackage.InvalidName;
+import org.omg.CosNaming.NamingContextPackage.InvalidNameHelper;
+import org.omg.CosNaming.NamingContextPackage.NotFound;
+
+/**
+ * The extended naming context stub (proxy), used on the client side.
+ * The most of the {@link NamingContextExt} methods contain the code
+ * for remote invocaton. However as remote invocation is potencially an
+ * expensive step, some trivial methods, not requiring access to the
+ * naming database, are handled locally (see the method descriptions for
+ * details).
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class _NamingContextExtStub
+  extends _NamingContextStub
+  implements NamingContextExt
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 6333293895664182866L;
+
+  /**
+   * This stub can be the base of the two CORBA objects, so it
+   * has two repository ids.
+   */
+  private static String[] __ids =
+    { NamingContextExtHelper.id(), NamingContextHelper.id() };
+
+  /**
+   * The local name form converter.
+   */
+  private NameTransformer converter = new NameTransformer();
+
+  /**
+   * Create the naming context stub.
+   */
+  public _NamingContextExtStub()
+  {
+    super();
+  }
+
+  /**
+   * Create the naming context stub with the given delegate.
+   */
+  _NamingContextExtStub(Delegate delegate)
+  {
+    super(delegate);
+  }
+
+  /**
+   * Return the array of repository ids for this object.
+   * This stub can be the base of the two CORBA objects, so it
+   * has two repository ids, for {@link NamingContext} and
+   * for {@link NamingContextExt}.
+   */
+  public String[] _ids()
+  {
+    return (String[]) __ids.clone();
+  }
+
+  /** {@inheritDoc} */
+  public org.omg.CORBA.Object resolve_str(String a_name_string)
+                                   throws NotFound, CannotProceed, InvalidName
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream _out = _request("resolve_str", true);
+        StringNameHelper.write(_out, a_name_string);
+        in = _invoke(_out);
+
+        return ObjectHelper.read(in);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        throw4(in, id);
+
+        // Should never happen.
+        throw new InternalError();
+      }
+    catch (RemarshalException _rm)
+      {
+        return resolve_str(a_name_string);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /**
+   * Converts the string name representation into the array
+   * name representation.
+   *
+   * This method is handled locally.
+   */
+  public NameComponent[] to_name(String a_name_string)
+                          throws InvalidName
+  {
+    return converter.toName(a_name_string);
+  }
+
+  /**
+   * Convert the name array representation to the name string
+   * representation.
+   *
+   * This method is handled locally.
+   */
+  public String to_string(NameComponent[] a_name)
+                   throws InvalidName
+  {
+    return converter.toString(a_name);
+  }
+
+  /** {@inheritDoc} */
+  public String to_url(String an_address, String a_name_string)
+                throws InvalidAddress, InvalidName
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream _out = _request("to_url", true);
+        AddressHelper.write(_out, an_address);
+        StringNameHelper.write(_out, a_name_string);
+        in = _invoke(_out);
+
+        return URLStringHelper.read(in);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        if (id.equals(InvalidAddressHelper.id()))
+          throw InvalidAddressHelper.read(in);
+        else if (id.equals(InvalidNameHelper.id()))
+          throw InvalidNameHelper.read(in);
+        else
+          throw new MARSHAL(id);
+      }
+    catch (RemarshalException _rm)
+      {
+        return to_url(an_address, a_name_string);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextImplBase.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextImplBase.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextImplBase.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextImplBase.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,415 @@
+/* _NamingContextImplBase.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import gnu.CORBA.Minor;
+
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.CompletionStatus;
+import org.omg.CORBA.DynamicImplementation;
+import org.omg.CORBA.ObjectHelper;
+import org.omg.CORBA.ObjectHolder;
+import org.omg.CORBA.ServerRequest;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.InvokeHandler;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.ResponseHandler;
+import org.omg.CORBA.portable.Streamable;
+import org.omg.CosNaming.NamingContextPackage.AlreadyBound;
+import org.omg.CosNaming.NamingContextPackage.AlreadyBoundHelper;
+import org.omg.CosNaming.NamingContextPackage.CannotProceed;
+import org.omg.CosNaming.NamingContextPackage.CannotProceedHelper;
+import org.omg.CosNaming.NamingContextPackage.InvalidName;
+import org.omg.CosNaming.NamingContextPackage.InvalidNameHelper;
+import org.omg.CosNaming.NamingContextPackage.NotEmpty;
+import org.omg.CosNaming.NamingContextPackage.NotEmptyHelper;
+import org.omg.CosNaming.NamingContextPackage.NotFound;
+import org.omg.CosNaming.NamingContextPackage.NotFoundHelper;
+
+import java.util.Hashtable;
+
+/**
+ * The naming context implementation base.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class _NamingContextImplBase
+  extends DynamicImplementation
+  implements NamingContext, InvokeHandler
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -114280294134561035L;
+
+  /**
+   * As there are quite many methods, it may be sensible to use the hashtable.
+   * This field is also reused in NamingContextPOA.
+   */
+  static Hashtable methods = new Hashtable();
+
+  /**
+   * Put all methods into the table.
+   */
+  static
+  {
+    methods.put("bind", new Integer(0));
+    methods.put("rebind", new Integer(1));
+    methods.put("bind_context", new Integer(2));
+    methods.put("rebind_context", new Integer(3));
+    methods.put("resolve", new Integer(4));
+    methods.put("unbind", new Integer(5));
+    methods.put("new_context", new Integer(6));
+    methods.put("bind_new_context", new Integer(7));
+    methods.put("destroy", new Integer(8));
+    methods.put("list", new Integer(9));
+  }
+
+  /**
+   * Return the array of repository ids.
+   */
+  public String[] _ids()
+  {
+    return new String[] { NamingContextHelper.id() };
+  }
+
+  /**
+   * The server calls this method after receiving the request message
+   * from client. The implementation base calls one of its abstract
+   * methods to perform the requested operation.
+   *
+   * @param method the method being invoked.
+   * @param in the stream to read parameters from.
+   * @param rh the handler to get a stream for writing a response.
+   *
+   * @return the stream, returned by the handler.
+   */
+  public OutputStream _invoke(String method, InputStream in, ResponseHandler rh)
+  {
+    OutputStream out = null;
+    Integer call_method = (Integer) methods.get(method);
+    if (call_method == null)
+      throw new BAD_OPERATION(Minor.Method, CompletionStatus.COMPLETED_MAYBE);
+
+    switch (call_method.intValue())
+      {
+        case 0 : // bind
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              org.omg.CORBA.Object an_object = ObjectHelper.read(in);
+              bind(a_name, an_object);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          catch (AlreadyBound ex)
+            {
+              out = rh.createExceptionReply();
+              AlreadyBoundHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 1 : // rebind
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              org.omg.CORBA.Object an_object = ObjectHelper.read(in);
+              rebind(a_name, an_object);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 2 : // bind_context
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              NamingContext a_context = NamingContextHelper.read(in);
+              bind_context(a_name, a_context);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          catch (AlreadyBound ex)
+            {
+              out = rh.createExceptionReply();
+              AlreadyBoundHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 3 : // rebind_context
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              NamingContext a_context = NamingContextHelper.read(in);
+              rebind_context(a_name, a_context);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 4 : // resolve
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              org.omg.CORBA.Object __result = null;
+              __result = resolve(a_name);
+              out = rh.createReply();
+              ObjectHelper.write(out, __result);
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 5 : // unbind
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              unbind(a_name);
+              out = rh.createReply();
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 6 : // new_context
+        {
+          NamingContext __result = null;
+          __result = new_context();
+          out = rh.createReply();
+          NamingContextHelper.write(out, __result);
+          break;
+        }
+
+        case 7 : // bind_new_context
+        {
+          try
+            {
+              NameComponent[] a_name = NameHelper.read(in);
+              NamingContext __result = null;
+              __result = bind_new_context(a_name);
+              out = rh.createReply();
+              NamingContextHelper.write(out, __result);
+            }
+          catch (NotFound ex)
+            {
+              out = rh.createExceptionReply();
+              NotFoundHelper.write(out, ex);
+            }
+          catch (AlreadyBound ex)
+            {
+              out = rh.createExceptionReply();
+              AlreadyBoundHelper.write(out, ex);
+            }
+          catch (CannotProceed ex)
+            {
+              out = rh.createExceptionReply();
+              CannotProceedHelper.write(out, ex);
+            }
+          catch (InvalidName ex)
+            {
+              out = rh.createExceptionReply();
+              InvalidNameHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 8 : // destroy
+        {
+          try
+            {
+              destroy();
+              out = rh.createReply();
+            }
+          catch (NotEmpty ex)
+            {
+              out = rh.createExceptionReply();
+              NotEmptyHelper.write(out, ex);
+            }
+          break;
+        }
+
+        case 9 : // list
+        {
+          int amount = in.read_ulong();
+          BindingListHolder a_list = new BindingListHolder();
+          BindingIteratorHolder an_iter = new BindingIteratorHolder();
+          list(amount, a_list, an_iter);
+          out = rh.createReply();
+          BindingListHelper.write(out, a_list.value);
+          BindingIteratorHelper.write(out, an_iter.value);
+          break;
+        }
+
+        default :
+          throw new BAD_OPERATION(0, CompletionStatus.COMPLETED_MAYBE);
+      }
+
+    return out;
+  }
+
+  /**
+   * The obsolete invocation using server request. Implemented for
+   * compatibility reasons, but is it more effectinve to use
+   * {@link #_invoke}.
+   *
+   * @param request a server request.
+   */
+  public void invoke(ServerRequest request)
+  {
+    Streamable result = null;
+
+    // The server request contains no required result type.
+    Integer call_method = (Integer) methods.get(request.operation());
+    if (call_method == null)
+      throw new BAD_OPERATION(Minor.Method, CompletionStatus.COMPLETED_MAYBE);
+
+    switch (call_method.intValue())
+      {
+        case 4 : // resolve, object
+          result = new ObjectHolder();
+          break;
+
+        case 6 : // new_context, NamingContext
+        case 7 : // bind_new_context, NamingContext
+        {
+          result = new NamingContextHolder();
+          break;
+        }
+
+        default : // void for others.
+          result = null;
+      }
+
+    gnu.CORBA.ServiceRequestAdapter.invoke(request, this, result);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextStub.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextStub.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextStub.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/_NamingContextStub.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,454 @@
+/* _NamingContextStub.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.CosNaming;
+
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.ObjectHelper;
+import org.omg.CORBA.portable.ApplicationException;
+import org.omg.CORBA.portable.Delegate;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.CORBA.portable.OutputStream;
+import org.omg.CORBA.portable.RemarshalException;
+import org.omg.CosNaming.NamingContextPackage.AlreadyBound;
+import org.omg.CosNaming.NamingContextPackage.AlreadyBoundHelper;
+import org.omg.CosNaming.NamingContextPackage.CannotProceed;
+import org.omg.CosNaming.NamingContextPackage.CannotProceedHelper;
+import org.omg.CosNaming.NamingContextPackage.InvalidName;
+import org.omg.CosNaming.NamingContextPackage.InvalidNameHelper;
+import org.omg.CosNaming.NamingContextPackage.NotEmpty;
+import org.omg.CosNaming.NamingContextPackage.NotEmptyHelper;
+import org.omg.CosNaming.NamingContextPackage.NotFound;
+import org.omg.CosNaming.NamingContextPackage.NotFoundHelper;
+
+/**
+ * The naming context stub (proxy), used on the client side.
+ * The {@link NamingContext} methods contain the code for remote
+ * invocaton.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class _NamingContextStub
+  extends ObjectImpl
+  implements NamingContext
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 6835430958405349379L;
+
+  /**
+   * Create the naming context stub.
+   */
+  public _NamingContextStub()
+  {
+    super();
+  }
+
+  /**
+   * Create the naming context stub with the given delegate.
+   */
+  _NamingContextStub(Delegate delegate)
+  {
+    super();
+    _set_delegate(delegate);
+  }
+
+  /**
+   * Return the array of repository ids for this object.
+   */
+  public String[] _ids()
+  {
+    return new String[] { NamingContextHelper.id() };
+  }
+
+  /** {@inheritDoc} */
+  public void bind(NameComponent[] a_name, org.omg.CORBA.Object an_object)
+            throws NotFound, CannotProceed, InvalidName, AlreadyBound
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("bind", true);
+        NameHelper.write(out, a_name);
+        ObjectHelper.write(out, an_object);
+        in = _invoke(out);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        throw5(in, id);
+      }
+    catch (RemarshalException remarsh)
+      {
+        bind(a_name, an_object);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public void bind_context(NameComponent[] a_name, NamingContext a_context)
+                    throws NotFound, CannotProceed, InvalidName, AlreadyBound
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("bind_context", true);
+        NameHelper.write(out, a_name);
+        NamingContextHelper.write(out, a_context);
+        in = _invoke(out);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        throw5(in, id);
+      }
+    catch (RemarshalException remarsh)
+      {
+        bind_context(a_name, a_context);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public NamingContext bind_new_context(NameComponent[] a_name)
+                                 throws NotFound, AlreadyBound, CannotProceed,
+                                        InvalidName
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("bind_new_context", true);
+        NameHelper.write(out, a_name);
+        in = _invoke(out);
+
+        NamingContext __result = NamingContextHelper.read(in);
+        return __result;
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        throw5(in, id);
+        throw new InternalError();
+      }
+    catch (RemarshalException remarsh)
+      {
+        return bind_new_context(a_name);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public void destroy()
+               throws NotEmpty
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("destroy", true);
+        in = _invoke(out);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        if (id.equals(NotEmptyHelper.id()))
+          throw NotEmptyHelper.read(in);
+        else
+          throw new MARSHAL(id);
+      }
+    catch (RemarshalException remarsh)
+      {
+        destroy();
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public void list(int amount, BindingListHolder a_list,
+                   BindingIteratorHolder an_iter
+                  )
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("list", true);
+        out.write_ulong(amount);
+        in = _invoke(out);
+        a_list.value = BindingListHelper.read(in);
+        an_iter.value = BindingIteratorHelper.read(in);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+        throw new MARSHAL(ex.getId());
+      }
+    catch (RemarshalException remarsh)
+      {
+        list(amount, a_list, an_iter);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public NamingContext new_context()
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("new_context", true);
+        in = _invoke(out);
+
+        NamingContext __result = NamingContextHelper.read(in);
+        return __result;
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+        throw new MARSHAL(ex.getId());
+      }
+    catch (RemarshalException remarsh)
+      {
+        return new_context();
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public void rebind(NameComponent[] a_name, org.omg.CORBA.Object an_object)
+              throws NotFound, CannotProceed, InvalidName
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("rebind", true);
+        NameHelper.write(out, a_name);
+        ObjectHelper.write(out, an_object);
+        in = _invoke(out);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        throw4(in, id);
+      }
+    catch (RemarshalException remarsh)
+      {
+        rebind(a_name, an_object);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public void rebind_context(NameComponent[] a_name, NamingContext a_context)
+                      throws NotFound, CannotProceed, InvalidName
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("rebind_context", true);
+        NameHelper.write(out, a_name);
+        NamingContextHelper.write(out, a_context);
+        in = _invoke(out);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        throw4(in, id);
+      }
+    catch (RemarshalException remarsh)
+      {
+        rebind_context(a_name, a_context);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public org.omg.CORBA.Object resolve(NameComponent[] a_name)
+                               throws NotFound, CannotProceed, InvalidName
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("resolve", true);
+        NameHelper.write(out, a_name);
+        in = _invoke(out);
+
+        org.omg.CORBA.Object __result = ObjectHelper.read(in);
+        return __result;
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        throw4(in, id);
+        throw new InternalError();
+      }
+    catch (RemarshalException remarsh)
+      {
+        return resolve(a_name);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /** {@inheritDoc} */
+  public void unbind(NameComponent[] a_name)
+              throws NotFound, CannotProceed, InvalidName
+  {
+    InputStream in = null;
+    try
+      {
+        OutputStream out = _request("unbind", true);
+        NameHelper.write(out, a_name);
+        in = _invoke(out);
+      }
+    catch (ApplicationException ex)
+      {
+        in = ex.getInputStream();
+
+        String id = ex.getId();
+        if (id.equals(NotFoundHelper.id()))
+          throw NotFoundHelper.read(in);
+        else if (id.equals(CannotProceedHelper.id()))
+          throw CannotProceedHelper.read(in);
+        else if (id.equals(InvalidNameHelper.id()))
+          throw InvalidNameHelper.read(in);
+        else
+          throw new MARSHAL(id);
+      }
+    catch (RemarshalException remarsh)
+      {
+        unbind(a_name);
+      }
+    finally
+      {
+        _releaseReply(in);
+      }
+  }
+
+  /**
+   * Throw one of the three possible exceptions, as specified in
+   * the passed exception repository id.
+   *
+   * This method should never return normally.
+   *
+   * @param in the stream to read the exception from.
+   * @param id the exception id.
+   *
+   * @throws InvalidName if the id matches.
+   * @throws CannotProceed if the id matches.
+   * @throws NotFound if the id matches.
+   * @throws MARSHAL if the id does not match any of the previous 4 exceptions.
+   */
+  void throw4(InputStream in, String id)
+                 throws MARSHAL, InvalidName, CannotProceed, NotFound
+  {
+    if (id.equals(NotFoundHelper.id()))
+      throw NotFoundHelper.read(in);
+    else if (id.equals(CannotProceedHelper.id()))
+      throw CannotProceedHelper.read(in);
+    else if (id.equals(InvalidNameHelper.id()))
+      throw InvalidNameHelper.read(in);
+    else
+      throw new MARSHAL(id);
+  }
+
+  /**
+   * Throw one of the five possible exceptions, as specified in
+   * the passed exception repository id.
+   *
+   * This method should never return normally.
+   *
+   * @param in the stream to read the exception from.
+   * @param id the exception id.
+   *
+   * @throws AlreadyBound if the id matches.
+   * @throws InvalidName if the id matches.
+   * @throws CannotProceed if the id matches.
+   * @throws NotFound if the id matches.
+   * @throws MARSHAL if the id does not match any of the previous 4 exceptions.
+   */
+  void throw5(InputStream in, String id)
+                 throws MARSHAL, AlreadyBound, InvalidName, CannotProceed,
+                        NotFound
+  {
+    if (id.equals(AlreadyBoundHelper.id()))
+      throw AlreadyBoundHelper.read(in);
+    else
+      throw4(in, id);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/package.html
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/package.html?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/package.html (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/CosNaming/package.html Thu Nov  8 16:56:19 2007
@@ -0,0 +1,50 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html - the naming service description.
+   Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath - javax.swing.text.html.parser</title></head>
+
+<body>
+<p>
+The COS (Common Object Service) Naming Service allows an object to be found from its symbolic name. The client obtains the object reference invoking the naming service as any other CORBA service. The naming service itself can be located from the stringified object reference (see {@link org.omg.CORBA.ORB#string_to_object(String)} or from the ORB pre-configured data by passing "NameService" to  {@link org.omg.CORBA.ORB.Object#resolve_initial_references(String)}. The returned object is casted to the NamingContextExt using {@link org.omg.CosNaming.NamingContextExtHelper#narrow}. The Naming Service can reside on any host accessible within the network.
+</p><p>
+The default pre-configured location method uses two parameters (properties, applet parameters or command line parameters): org.omg.CORBA.ORBInitialHost and org.omg.CORBA.ORBInitialPort. If these parameters are missing, the naming service is supposed to be running at port 900 on the local host.
+</p>
+ at author Audrius Meskauskas, Lithuania
+</body>
+</html>

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/Dynamic/Parameter.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/Dynamic/Parameter.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/Dynamic/Parameter.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/Dynamic/Parameter.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,90 @@
+/* Parameter.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.Dynamic;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.ParameterMode;
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * When representing the information about a request,
+ * defines a one of the arguments for the operation being invoked.
+ *
+ * @see org.omg.PortableInterceptor.RequestInfoOperations#arguments()
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class Parameter
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 892191606993734699L;
+
+  /**
+   * The {@link Any}, holding the value of the parameter.
+   */
+  public Any argument;
+
+  /**
+   * The mode of the parameter. Specifies if the parameter is used
+   * to pass the value to the method, to return the value from the
+   * method or for both of these purposes.
+   */
+  public ParameterMode mode;
+
+  /**
+   * Create the uninitialised instance.
+   */
+  public Parameter()
+  {
+  }
+
+  /**
+   * Create an instance, initialising field to the passed values.
+   */
+  public Parameter(Any an_argument, ParameterMode a_mode)
+  {
+    argument = an_argument;
+    mode = a_mode;
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/AnySeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/AnySeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/AnySeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/AnySeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,115 @@
+/* AnySeqHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TCKind;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations for the array of {@link Any}. This class shares
+ * the same {@link AnySeqHolder} as the {@link org.omg.CORBA.AnySeqHelper}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class AnySeqHelper
+{
+  /**
+   * Delegates call to {@link org.omg.CORBA.AnySeqHelper#extract}.
+   */
+  public static Any[] extract(Any any)
+  {
+    return org.omg.CORBA.AnySeqHelper.extract(any);
+  }
+
+  /**
+   * Get the AnySeq repository id.
+   *
+   * @return "IDL:omg.org/DynamicAny/AnySeq:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/AnySeq:1.0";
+  }
+
+  /**
+   * Delegates call to {@link org.omg.CORBA.AnySeqHelper#insert}.
+   */
+  public static void insert(Any any, Any[] those)
+  {
+    org.omg.CORBA.AnySeqHelper.insert(any, those);
+  }
+
+  /**
+   * Delegates call to {@link org.omg.CORBA.AnySeqHelper#read}.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   */
+  public static Any[] read(InputStream input)
+  {
+    return org.omg.CORBA.AnySeqHelper.read(input);
+  }
+
+  /**
+   * Get the typecode as officially defined for this helper.
+   *
+   * @return alias of unbounded sequence of Any's, named AnySeq,
+   * with the id, returned by {@link #id()}.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    TypeCode t =
+      orb.create_sequence_tc(0, orb.get_primitive_tc(TCKind.tk_any));
+    return orb.create_alias_tc(id(), "AnySeq", t);
+  }
+
+  /**
+   * Delegates call to {@link org.omg.CORBA.AnySeqHelper#write}.
+   */
+  public static void write(OutputStream output, Any[] value)
+  {
+    org.omg.CORBA.AnySeqHelper.write(output, value);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAny.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAny.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAny.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAny.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,71 @@
+/* DynAny.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * <p>
+ * The DynAny interface provides possibility to access the components of the
+ * CORBA object, stored inside the {@link Any}. The DynAny and derived classes
+ * additionally allows to access the members of the sequence, structure, union
+ * and get the data about enumeration, value type and CORBA <code>fixed</code>
+ * without knowing the exact type at the run time. The returned members are also
+ * wrapped into DynAny objects, allowing them to be the nested structures.
+ * </p>
+ * <p>
+ * The DynAny's are usually produced by {@link DynAnyFactory}. This factory is
+ * obtained from the ORB: <br>
+ * <code>
+ * DynAnyFactory f = DynAnyFactoryHelper.narrow
+ *   (orb.resolve_initial_references("DynAnyFactory"));
+ * </code>
+ * </p>
+ * <p>
+ * DynAny can also be returned by a method, invoked on another DynAny.
+ * </p>
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynAny
+  extends DynAnyOperations, IDLEntity, org.omg.CORBA.Object, Serializable
+{
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactory.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactory.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactory.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactory.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,55 @@
+/* DynAnyFactory.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Produces DynAnys from Anys or typecodes. The produced DynAnys are initialized
+ * to they agreed default values.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynAnyFactory
+  extends DynAnyFactoryOperations, IDLEntity, org.omg.CORBA.Object,
+  Serializable
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,190 @@
+/* DynAnyFactoryHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link DynAnyFactory}. Following the 1.5 JDK
+ * specifications, DynAnyFactory is always a local object, so the two methods of
+ * this helper ({@link #read} and {@link #write} are not in use, always
+ * throwing {@link MARSHAL}.
+ * 
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynAnyFactoryHelper
+{
+  /**
+   * Cast the passed object into the DynAnyFactory. As DynAnyFactory is a local
+   * object, the method just uses java final_type cast.
+   * 
+   * @param obj the object to narrow.
+   * @return narrowed instance.
+   * @throws BAD_PARAM if the passed object is not a DynAnyFactory.
+   */
+  public static DynAnyFactory narrow(org.omg.CORBA.Object obj)
+  {
+    try
+      {
+        return (DynAnyFactory) obj;
+      }
+    catch (ClassCastException cex)
+      {
+        throw new BAD_PARAM(obj.getClass().getName()
+                            + " is not a DynAnyFactory");
+      }
+  }
+  
+  /**
+   * Narrow the given object to the DynAnyFactory. For the objects that are
+   * always local, this operation does not differ from the ordinary
+   * {@link #narrow} (ClassCastException will be thrown if narrowing something
+   * different).
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted DynAnyFactory.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static DynAnyFactory unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    return narrow(obj);
+  }    
+
+  /**
+   * Get the final_type code of the {@link DynAnyFactory}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "DynAnyFactory");
+  }
+
+  /**
+   * Insert the DynAnyFactory into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * 
+   * @param that the DynAnyFactory to insert.
+   */
+  public static void insert(Any any, DynAnyFactory that)
+  {
+    any.insert_Object(that);
+  }
+
+  /**
+   * Extract the DynAnyFactory from given Any.
+   * 
+   * @throws BAD_OPERATION if the passed Any does not contain DynAnyFactory.
+   */
+  public static DynAnyFactory extract(Any any)
+  {
+    return narrow(any.extract_Object());
+  }
+
+  /**
+   * Get the DynAnyFactory repository id.
+   * 
+   * @return "IDL:omg.org/DynamicAny/DynAnyFactory:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynAnyFactory:1.0";
+  }
+
+  /**
+   * This should read DynAnyFactory from the CDR input stream, but (following
+   * the JDK 1.5 API) it does not. The factory can only be obtained from the
+   * ORB.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static DynAnyFactory read(InputStream input)
+  {
+    throw new MARSHAL(not_applicable(id()));
+  }
+
+  /**
+   * This should read DynAnyFactory from the CDR input stream, but (following
+   * the JDK 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynAnyFactory value)
+  {
+    throw new MARSHAL(not_applicable(id()));
+  }
+
+  /**
+   * The package level method for throwing exception, explaining that the
+   * operation is not applicable.
+   * 
+   * @param Id the Id for the typecode for that the operations was attempted to
+   * perform.
+   */
+  static String not_applicable(String Id)
+  {
+    MARSHAL m = new MARSHAL("The read/write are not applicable for " + Id);
+    m.minor = Minor.Inappropriate;
+    throw m;
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,153 @@
+/* DynAnyFactoryOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.TypeCode;
+import org.omg.DynamicAny.DynAnyFactoryPackage.InconsistentTypeCode;
+
+/**
+ * Defines the operations, applicable for DynAnyFactory. These operations
+ * produce new DynAny's either from Any, serving as a template and value
+ * provider, or from the given typecode.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynAnyFactoryOperations
+{
+  /**
+   * Create DynAny for holding the data of the given type. The returned DynAny
+   * is initialised to its agreed default value. The agreed default values are:
+   * <table border='1'>
+   * <tr>
+   * <th>Type</th>
+   * <th>Value</th>
+   * <th>Creates</th>
+   * </tr>
+   *
+   * <tr>
+   * <td>boolean</td>
+   * <td>false</td>
+   * <td>{@link DynAny}</td>
+   * </tr>
+   * <tr>
+   * <td>numeric types, octet, fixed</td>
+   * <td>0</td>
+   * <td>{@link DynAny}</td>
+   * </tr>
+   * <tr>
+   * <td>char, wchar</td>
+   * <td>(char) 0</td>
+   * <td>{@link DynAny}</td>
+   * </tr>
+   * <tr>
+   * <td>string, wstring</td>
+   * <td>empty string ("", not <code>null<code>)</td>
+   * <td>{@link DynAny}</td>
+   * </tr>
+   * <tr>
+   * <td>{@link Any}</td>
+   * <td>{@link Any} with no value and typecode of kind {@link TCKind.tk_null}</td>
+   * <td>{@link DynAny}</td>
+   * </tr>
+   * <tr>
+   * <td>Sequence</td>
+   * <td>Empty (zero size) sequence</td>
+   * <td>{@link DynSequence}</td>
+   * </tr>
+   * <tr>
+   * <td>Array</td>
+   * <td>All members of array are recursively initialised to default values.</td>
+   * <td>{@link DynArray}</td>
+   * </tr>
+   * <tr>
+   * <td>Structure, exception</td>
+   * <td>All fields of the structure (if any) are recursively initialised to
+   * default values.</td>
+   * <td>{@link DynStruct}</td>
+   * </tr>
+   * <tr>
+   * <td>Enumeration</td>
+   * <td>Default value, indicated by typecode.</td>
+   * <td>{@link DynEnum}</td>
+   * </tr>
+   * <tr>
+   * <td>Union</td>
+   * <td>Default variant (indicated by typecode), recursively initialised to
+   * its default value.</td>
+   * <td>{@link DynUnion}</td>
+   * </tr>
+   * <tr>
+   * <td>Value, ValueBox</td>
+   * <td>null</td>
+   * <td>{@link DynValue}, {@link DynValueBox}</td>
+   * </tr>
+   * <tr>
+   * <td>TypeCode</td>
+   * <td>Typecode of kind <code>TCKind.tk_null</code></td>
+   * <td>{@link DynValue}, {@link DynValueBox}</td>
+   * </tr>
+   *
+   * </table>
+   *
+   * @param type the type of the data being stored.
+   *
+   * @return the created DynAny, having the passed type.
+   *
+   * @throws InconsistentTypeCode if type.kind() is tk_Principal, tk_native or
+   * tk_abstract_interface. These types cannot be stored in DynAny.
+   */
+  DynAny create_dyn_any_from_type_code(TypeCode type)
+    throws InconsistentTypeCode;
+
+  /**
+   * Create DynAny using the given Any as template.
+   *
+   * @param value the Any, providing type and value for the DynAny being
+   * created.
+   *
+   * @return the created DynAny, having the same type and storing the same value
+   * as the passed Any.
+   *
+   * @throws InconsistentTypeCode if value.type().kind() is tk_Principal,
+   * tk_native or tk_abstract_interface. These types cannot be stored in DynAny.
+   */
+  DynAny create_dyn_any(Any value)
+    throws InconsistentTypeCode;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCode.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCode.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCode.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCode.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,82 @@
+/* InconsistentTypeCode.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny.DynAnyFactoryPackage;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+* The InconsistentTypeCode is thrown on the attempt to create
+* an {@link org.omg.DynamicAny.DynAny} for <code>Principal</code>
+* or <code>native</code> data types. The OMG documentation states
+* that these two types should not be suported by org.omg.DynamicAny
+* package.
+*
+* @see org.omg.DynamicAny.DynAnyOperations
+*
+* @author Audrius Meskauskas, Lithiania (AudriusA at Bioinformatics.org)
+*/
+public final class InconsistentTypeCode
+  extends UserException
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 3679785322052655944L;
+
+  /**
+   * Create InconsistentTypeCode with no explaining message.
+   */
+  public InconsistentTypeCode()
+  {
+  }
+
+  /**
+   * Create the InconsistentTypeCode with explaining message.
+   *
+   * @param why a string, explaining, why this exception has been thrown.
+   */
+  public InconsistentTypeCode(String why)
+  {
+    super(why);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCodeHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCodeHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCodeHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCodeHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,141 @@
+/* InconsistentTypeCodeHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny.DynAnyFactoryPackage;
+
+import gnu.CORBA.EmptyExceptionHolder;
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TCKind;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+* The helper operations for the exception {@link InconsistentTypeCode}.
+*
+* @author Audrius Meskauskas, Lithiania (AudriusA at Bioinformatics.org)
+*/
+public abstract class InconsistentTypeCodeHelper
+{
+  /**
+   * Create the InconsistentTypeCode typecode (structure, named
+   * "InconsistentTypeCode").
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    StructMember[] members = new StructMember[0];
+    return orb.create_exception_tc(id(), "InconsistentTypeCode", members);
+  }
+
+  /**
+   * Insert the InconsistentTypeCode into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * @param that the InconsistentTypeCode to insert.
+   */
+  public static void insert(Any any, InconsistentTypeCode that)
+  {
+    any.insert_Streamable(new EmptyExceptionHolder(that, type()));
+  }
+
+  /**
+   * Extract the InconsistentTypeCode from given Any.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain
+   * InconsistentTypeCode.
+   */
+  public static InconsistentTypeCode extract(Any any)
+  {
+    try
+      {
+        EmptyExceptionHolder h =
+          (EmptyExceptionHolder) any.extract_Streamable();
+        return (InconsistentTypeCode) h.value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("InconsistentTypeCode expected");
+        bad.initCause(cex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the InconsistentTypeCode repository id.
+   *
+   * @return "IDL:omg.org/DynamicAny/DynAnyFactory/InconsistentTypeCode:1.0".
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynAnyFactory/InconsistentTypeCode:1.0";
+  }
+
+  /**
+   * Read the exception from the CDR intput stream.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   */
+  public static InconsistentTypeCode read(InputStream input)
+  {
+    // Read the exception repository id.
+    String id = input.read_string();
+    InconsistentTypeCode value = new InconsistentTypeCode(id);
+
+    return value;
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   *
+   * @param output a org.omg.CORBA.portable stream stream to write into.
+   * @param value a value to write.
+   */
+  public static void write(OutputStream output, InconsistentTypeCode value)
+  {
+    // Write the exception repository id.
+    output.write_string(id());
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,173 @@
+/* DynAnyHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link DynAny}. Following the 1.5 JDK
+ * specifications, DynAny is always a local object, so the two methods of this
+ * helper ({@link #read} and {@link #write} are not in use, always throwing
+ * {@link MARSHAL}.
+ * 
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynAnyHelper
+{
+  /**
+   * Cast the passed object into the DynAny. As DynAny is a local object, the
+   * method just uses java type cast.
+   * 
+   * @param obj the object to narrow.
+   * @return narrowed instance.
+   * @throws BAD_PARAM if the passed object is not a DynAny.
+   */
+  public static DynAny narrow(org.omg.CORBA.Object obj)
+  {
+    try
+      {
+        return (DynAny) obj;
+      }
+    catch (ClassCastException cex)
+      {
+        throw new BAD_PARAM(obj.getClass().getName() + " is not a DynAny");
+      }
+  }
+  
+  /**
+   * Narrow the given object to the DynAny. For the objects that are
+   * always local, this operation does not differ from the ordinary
+   * {@link #narrow} (ClassCastException will be thrown if narrowing something
+   * different).
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted DynAny.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static DynAny unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    return narrow(obj);
+  }    
+
+  /**
+   * Get the type code of the {@link DynAny}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "DynAny");
+  }
+
+  /**
+   * Insert the DynAny into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * 
+   * @param that the DynAny to insert.
+   */
+  public static void insert(Any any, DynAny that)
+  {
+    any.insert_Object(that);
+  }
+
+  /**
+   * Extract the DynAny from given Any.
+   * 
+   * @throws BAD_OPERATION if the passed Any does not contain DynAny.
+   */
+  public static DynAny extract(Any any)
+  {
+    return narrow(any.extract_Object());
+  }
+
+  /**
+   * Get the DynAny repository id.
+   * 
+   * @return "IDL:omg.org/DynamicAny/DynAny:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynAny:1.0";
+  }
+
+  /**
+   * This should read DynAny from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static DynAny read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * This should read DynAny from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynAny value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,540 @@
+/* DynAnyOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.TypeCode;
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+import java.io.Serializable;
+
+/**
+ * Defines the operations, applicable to {@link DynAny}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynAnyOperations
+{
+  /**
+   * Initialises the value of this DynAny with the value, stored inside the
+   * passed DynAny, making a shallow copy.
+   *
+   * @param from the DynAny to copy from.
+   * @throws TypeMismatch if the source DynAny is invalid.
+   */
+  void assign(DynAny from)
+       throws TypeMismatch;
+
+  /**
+   * Fully clones the content of this Any, returning a deep copy.
+   */
+  DynAny copy();
+
+  /**
+   * Returns the focused component of this DynAny. The DynAny has the internal
+   * pointer (reference) that can point to one of its components. The returned
+   * DynAny can be used to get or set the value of the focused component. If the
+   * DynAny holds a primitive type with no components, this implementation
+   * returns <code>null</code>.
+   *
+   * @throws TypeMismatch if called on DynAny that cannot have active
+   * components, like {@link DynEnum}.
+   */
+  DynAny current_component()
+                    throws TypeMismatch;
+
+  /**
+   * Destroys this DynAny, freeing the used resources. In java, resources are
+   * freed by the garbage collectors, so this method typically returns without
+   * action.
+   */
+  void destroy();
+
+  /**
+   * Makes a DynAny from the {@link Any}. The passed {@link Any} becomes the
+   * enclosed instance of this DynAny, allowing to change/traverse the
+   * {@link Any} fields by the {@link DynAny} methods.
+   *
+   * @throws TypeMismatch if the type of this DynAny differs from the type of
+   * the passed Any. The DynAny cannot be reused with the enclosed type
+   * different from that it was initially created.
+   * @throws InvalidValue if the value, stored in the passed parameter, is
+   * otherwise invalid.
+   */
+  void from_any(Any an_any)
+         throws TypeMismatch, InvalidValue;
+
+  /**
+   * This method is used when the wrapped Any contains an instance of another
+   * Any itself. The method returns this second enclosed Any.
+   *
+   * @throws TypeMismatch if the typecode of the accessed Any is not the same as
+   * the typecode of this DynAny.
+   */
+  Any get_any()
+       throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the boolean value that is expected to be stored in this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  boolean get_boolean()
+               throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the char value that is expected to be stored in this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  char get_char()
+         throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the <code>double</code> value that is expected to be stored in
+   * this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  double get_double()
+             throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the <code>float</code> value that is expected to be stored in
+   * this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  float get_float()
+           throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the int (CORBA long) value that is expected to be stored in this
+   * DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  int get_long()
+        throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the long (CORBA long long) value that is expected to be stored in
+   * this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  long get_longlong()
+             throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the byte (CORBA octet) value that is expected to be stored in this
+   * DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  byte get_octet()
+          throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the CORBA object reference that is expected to be stored in this
+   * DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  org.omg.CORBA.Object get_reference()
+                              throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the <code>short</code> value that is expected to be stored in
+   * this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  short get_short()
+           throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the string value that is expected to be stored in this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  String get_string()
+             throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the {@link TypeCode} value that is expected to be stored in this
+   * DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  TypeCode get_typecode()
+                 throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the unsigned int (CORBA ulong) value that is expected to be stored
+   * in this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  int get_ulong()
+         throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the unsingel long (CORBA unsigned long long )value that is expected
+   * to be stored in this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  long get_ulonglong()
+              throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the unsigned short value that is expected to be stored in this
+   * DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  short get_ushort()
+            throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the value that is expected to be stored in this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  Serializable get_val()
+                throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the wide (usually UTF-16) character value that is expected to be
+   * stored in this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  char get_wchar()
+          throws TypeMismatch, InvalidValue;
+
+  /**
+   * Extract the wide (usually UFT-16) string that is expected to be stored in
+   * this DynAny.
+   *
+   * @throws TypeMismatch if this DynAny holds the value of the different type.
+   */
+  String get_wstring()
+              throws TypeMismatch, InvalidValue;
+
+  /**
+   * Insert the {@link Any} value into the enclosed {@link Any} inside this
+   * DynAny.
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_any(Any an_any)
+           throws TypeMismatch, InvalidValue;
+
+  /**
+   * Insert the boolean value into the enclosed {@link Any} inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_boolean(boolean a_x)
+               throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the char value into the enclosed {@link Any} inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_char(char a_x)
+            throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the double value into the enclosed {@link Any} inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_double(double a_x)
+              throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the float value into the enclosed {@link Any} inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_float(float a_x)
+             throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the int (CORBA long) value into the enclosed {@link Any} inside this
+   * DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_long(int a_x)
+            throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the long (CORBA long long) value into the enclosed {@link Any}
+   * inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_longlong(long a_x)
+                throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the byte (CORBA octet) value into the enclosed {@link Any} inside
+   * this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_octet(byte a_x)
+             throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the object reference into the enclosed {@link Any} inside this
+   * DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_reference(org.omg.CORBA.Object a_x)
+                 throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the <code>short</code> value into the enclosed {@link Any} inside
+   * this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_short(short a_x)
+             throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the string value into the enclosed {@link Any} inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_string(String a_x)
+              throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the {@link TypeCode} value into the enclosed {@link Any} inside this
+   * DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_typecode(TypeCode a_x)
+                throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the int (CORBA unsinged long) value into the enclosed {@link Any}
+   * inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_ulong(int a_x)
+             throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the long (CORBA unsigned long long) value into the enclosed
+   * {@link Any} inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_ulonglong(long a_x)
+                 throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the short (CORBA unsigned short) value into the enclosed {@link Any}
+   * inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_ushort(short a_x)
+              throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the value into the enclosed {@link Any} inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_val(Serializable a_x)
+           throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the wide char (usually UTF-16) value into the enclosed {@link Any}
+   * inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_wchar(char a_x)
+             throws InvalidValue, TypeMismatch;
+
+  /**
+   * Insert the wide string (usually UTF-16) into the enclosed {@link Any}
+   * inside this DynAny
+   *
+   * @param a_x the value being inserted.
+   * @throws InvalidValue if the value type does not match the typecode of the
+   * enclosed {@link Any}.
+   */
+  void insert_wstring(String a_x)
+               throws InvalidValue, TypeMismatch;
+
+  /**
+   * Advances the internal pointer, described in the {@link current_component},
+   * one position forward.
+   *
+   * @return true if the pointer now points to the new component, false if there
+   * are no more components of this DynAny holds a basic type that is not
+   * divided into components.
+   */
+  boolean next();
+
+  /**
+   * Moves the internal pointer, described in the {@link current_component}, to
+   * the first component.
+   */
+  void rewind();
+
+  /**
+   * Moves the internal pointer, described in the {@link current_component}, to
+   * the given position.
+   *
+   * @param p the number of the internal component on that the internal pointer
+   * must be focused.
+   * @return true on success or false if there is no component with the given
+   * number. If the DynAny holds the basic type, this method returs false p
+   * values other than 0.
+   */
+  boolean seek(int p);
+
+  /**
+   * Returns a shallow copy of the enclosed {@link Any},
+   *
+   * @return shallow copy of the enclosed {@link Any}.
+   */
+  Any to_any();
+
+  /**
+   * Returns the typecode of the object, inserted into this DynAny.
+   *
+   * @return the typecode of the inserted {@link Any} or null typecode if no
+   * {@link Any has been yet inserted}.
+   */
+  TypeCode type();
+
+  /**
+   * Insert a value at the current position.
+   *
+   * @param insert_it a value to insert.
+   * @throws TypeMismatch if the component at the current position has a
+   * different type.
+   * @throws InvalidValue if the current position points nowhere.
+   */
+  void insert_dyn_any(DynAny insert_it)
+               throws TypeMismatch, InvalidValue;
+
+  /**
+   * Checks for equality with another Dynamic Any.
+   *
+   *
+   * @specnote This method is currently only implemented only for case when
+   * another DynAny was created by the factory of this implementation and is not
+   * an independent class, just implementing interface. Otherwise, a
+   * NO_IMPLEMENT minor 8148 will be thrown. General implementation is highly
+   * ineffective, but we will do if somebody would ever need it.
+   */
+  boolean equal(DynAny other);
+
+  /**
+   * Get the number number of fields in the enclosed structure or number of
+   * memebers in the enclosed array, sequence, enumeration, etc. This method
+   * only counts elements at the top level. For instance, if invoked on a
+   * DynStruct with a single member, it returns 1, irrespective of the type of
+   * the member.
+   *
+   * @return number of components or 0 if the enclosed Any is not divideable.
+   */
+  int component_count();
+
+  /**
+   * Return DynAny, wrapping the second (enclosed any) that is stored in the
+   * wrapped Any.
+   *
+   * @throws TypeMismatch if the wrapped Any does not store another Any.
+   * @throws InvalidValue if the current position points nowhere.
+   */
+  DynAny get_dyn_any()
+              throws TypeMismatch, InvalidValue;
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/InvalidValue.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/InvalidValue.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/InvalidValue.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/InvalidValue.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,81 @@
+/* InvalidValue.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny.DynAnyPackage;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * Raised when the operation on DynAny cannot be performed because one of
+ * the parameters, while having the correct type, has the invalid value.
+ * For instance, it is raised in response to the set the array content,
+ * when number of the provided elements mismatch the size of array.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class InvalidValue
+  extends UserException
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = 4928947584617628504L;
+
+  /**
+   * Create InvalidValue with no explaining
+   * message.
+   */
+  public InvalidValue()
+  {
+  }
+
+  /**
+   * Create the InvalidValue with explaining
+   * message.
+   *
+   * @param why a string, explaining, why this exception has been thrown.
+   */
+  public InvalidValue(String why)
+  {
+    super(why);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/InvalidValueHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/InvalidValueHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/InvalidValueHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/InvalidValueHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,142 @@
+/* InvalidValueHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny.DynAnyPackage;
+
+import gnu.CORBA.EmptyExceptionHolder;
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TCKind;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+* The helper operations for the exception {@link InvalidValue}.
+*
+* @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+*/
+public abstract class InvalidValueHelper
+{
+  /**
+   * Create the InvalidValue typecode (structure, named "InvalidValue").
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    StructMember[] members = new StructMember[0];
+    return orb.create_exception_tc(id(), "InvalidValue", members);
+  }
+
+  /* Every user exception with no user defined
+     fields can use EmptyExceptionHolder */
+
+  /**
+   * Insert the InvalidValue into the given Any.
+   *
+   * @param any the Any to insert into.
+   * @param that the InvalidValue to insert.
+   */
+  public static void insert(Any any, InvalidValue that)
+  {
+    any.insert_Streamable(new EmptyExceptionHolder(that, type()));
+  }
+
+  /**
+   * Extract the InvalidValue from given Any.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain InvalidValue.
+   */
+  public static InvalidValue extract(Any any)
+  {
+    try
+      {
+        EmptyExceptionHolder h =
+          (EmptyExceptionHolder) any.extract_Streamable();
+        return (InvalidValue) h.value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("InvalidValue expected");
+        bad.initCause(cex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the InvalidValue repository id.
+   *
+   * @return "IDL:omg.org/DynamicAny/DynAny/InvalidValue:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynAny/InvalidValue:1.0";
+  }
+
+  /**
+   * Read the exception from the CDR intput stream.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   */
+  public static InvalidValue read(InputStream input)
+  {
+    // Read the exception repository id.
+    String id = input.read_string();
+    InvalidValue value = new InvalidValue(id);
+
+    return value;
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   *
+   * @param output a org.omg.CORBA.portable stream stream to write into.
+   * @param value a value to write.
+   */
+  public static void write(OutputStream output, InvalidValue value)
+  {
+    // Write the exception repository id.
+    output.write_string(id());
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/TypeMismatch.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/TypeMismatch.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/TypeMismatch.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/TypeMismatch.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,81 @@
+/* TypeMismatch.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny.DynAnyPackage;
+
+import org.omg.CORBA.UserException;
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * Raised when the operation cannot be performed because the involved
+ * data structure has the mismatching typecode. For instance, it is
+ * raised on the attempt to set the array content, when the value being set
+ * has a different type than the array element.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class TypeMismatch
+  extends UserException
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -6393641830493471034L;
+
+  /**
+   * Create TypeMismatch with no explaining
+   * message.
+   */
+  public TypeMismatch()
+  {
+  }
+
+  /**
+   * Create the TypeMismatch with explaining
+   * message.
+   *
+   * @param why a string, explaining, why this exception has been thrown.
+   */
+  public TypeMismatch(String why)
+  {
+    super(why);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/TypeMismatchHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/TypeMismatchHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/TypeMismatchHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/TypeMismatchHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,142 @@
+/* TypeMismatchHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny.DynAnyPackage;
+
+import gnu.CORBA.EmptyExceptionHolder;
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TCKind;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+* The helper operations for the exception {@link TypeMismatch}.
+*
+* @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+*/
+public abstract class TypeMismatchHelper
+{
+  /**
+   * Create the TypeMismatch typecode (structure, named "TypeMismatch").
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    StructMember[] members = new StructMember[0];
+    return orb.create_exception_tc(id(), "TypeMismatch", members);
+  }
+
+  /* Every user exception with no user defined
+     fields can use EmptyExceptionHolder */
+
+  /**
+   * Insert the TypeMismatch into the given Any.
+   *
+   * @param any the Any to insert into.
+   * @param that the TypeMismatch to insert.
+   */
+  public static void insert(Any any, TypeMismatch that)
+  {
+    any.insert_Streamable(new EmptyExceptionHolder(that, type()));
+  }
+
+  /**
+   * Extract the TypeMismatch from given Any.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain TypeMismatch.
+   */
+  public static TypeMismatch extract(Any any)
+  {
+    try
+      {
+        EmptyExceptionHolder h =
+          (EmptyExceptionHolder) any.extract_Streamable();
+        return (TypeMismatch) h.value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("TypeMismatch expected");
+        bad.initCause(cex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the TypeMismatch repository id.
+   *
+   * @return "IDL:omg.org/DynamicAny/DynAny/TypeMismatch:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynAny/TypeMismatch:1.0";
+  }
+
+  /**
+   * Read the exception from the CDR intput stream.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   */
+  public static TypeMismatch read(InputStream input)
+  {
+    // Read the exception repository id.
+    String id = input.read_string();
+    TypeMismatch value = new TypeMismatch(id);
+
+    return value;
+  }
+
+  /**
+   * Write the exception to the CDR output stream.
+   *
+   * @param output a org.omg.CORBA.portable stream stream to write into.
+   * @param value a value to write.
+   */
+  public static void write(OutputStream output, TypeMismatch value)
+  {
+    // Write the exception repository id.
+    output.write_string(id());
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/package.html
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/package.html?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/package.html (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnyPackage/package.html Thu Nov  8 16:56:19 2007
@@ -0,0 +1,49 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html -- 
+   Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath - org.omg.DynamicAny.DynAnyPackage</title></head>
+
+<body>
+
+Contains several exceptions that may be thrown during the operations on
+{@link org.omg.DynamicAny.DynAny } and derived classes. Includes helpers,
+providing helper operations for these exceptions.
+ 
+ at author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)</body>
+</html>

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnySeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnySeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnySeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynAnySeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,146 @@
+/* DynAnySeq.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.DynAnySeqHolder;
+import gnu.CORBA.Minor;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations for the array of {@link DynAny} ({@link DynAnySeq}).
+ * Following the 1.5 JDK specifications, DynAny (and hence an sequence of
+ * DynAny's) is always a local object, so the two methods of this helper
+ * ({@link #read} and {@link #write} are not in use, always throwing
+ * {@link MARSHAL}.
+ *
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynAnySeqHelper
+{
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    TypeCode t = orb.create_sequence_tc(0, DynAnyHelper.type());
+    return orb.create_alias_tc(id(), "DynAnySeq", t);
+  }
+
+  /**
+   * Insert the DynAnySeq into the given Any.
+   * This method uses the DynAnySeqHolder.
+   *
+   * @param any the Any to insert into.
+   * @param those the DynAny[] to insert.
+   */
+  public static void insert(Any any, DynAny[] those)
+  {
+    any.insert_Streamable(new DynAnySeqHolder(those));
+  }
+
+  /**
+   * Extract the DynAnySeq from given Any.
+   * This method uses the DynAnySeqHolder.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain DynAnySeq.
+   */
+  public static DynAny[] extract(Any any)
+  {
+    try
+      {
+        return ((DynAnySeqHolder) any.extract_Streamable()).value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("DynAnySeq expected");
+        bad.initCause(cex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the DynAnySeq repository id.
+   *
+   * @return "IDL:omg.org/DynamicAny/DynAnySeq:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynAnySeq:1.0";
+  }
+
+  /**
+   * The method should read this object from the CDR input stream, but
+   * (following the JDK 1.5 API) it does not.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   *
+   * @specenote Sun throws the same exception.
+   *
+   * @throws MARSHAL always.
+   */
+  public static DynAny[] read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * The method should write this object to the CDR input stream, but
+   * (following the JDK 1.5 API) it does not.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   *
+   * @specenote Sun throws the same exception.
+   *
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynAny[] value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArray.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArray.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArray.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArray.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,54 @@
+/* DynArray.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Represents a fixed size array. All components in the array have the same
+ * type.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynArray
+  extends DynArrayOperations, DynAny, IDLEntity, org.omg.CORBA.Object,
+  Serializable
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArrayHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArrayHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArrayHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArrayHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,172 @@
+/* DynArrayHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link DynArray}. Following the 1.5 JDK
+ * specifications, DynArray is always a local object, so the two methods of this
+ * helper ({@link #read} and {@link #write} are not in use, always throwing
+ * {@link MARSHAL}.
+ * 
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynArrayHelper
+{
+  /**
+   * Cast the passed object into the DynArray. As DynArray is a local object,
+   * the method just uses java type cast.
+   * 
+   * @param obj the object to narrow.
+   * @return narrowed instance.
+   * @throws BAD_PARAM if the passed object is not a DynArray.
+   */
+  public static DynArray narrow(org.omg.CORBA.Object obj)
+  {
+    try
+      {
+        return (DynArray) obj;
+      }
+    catch (ClassCastException cex)
+      {
+        throw new BAD_PARAM(obj.getClass().getName() + " is not a DynArray");
+      }
+  }
+  
+  /**
+   * Narrow the given object to the DynArray. For the objects that are
+   * always local, this operation does not differ from the ordinary
+   * {@link #narrow} (ClassCastException will be thrown if narrowing something
+   * different).
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted DynArray.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static DynArray unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    return narrow(obj);
+  }    
+
+  /**
+   * Get the type code of the {@link DynArray}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "DynArray");
+  }
+
+  /**
+   * Insert the DynArray into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * 
+   * @param that the DynArray to insert.
+   */
+  public static void insert(Any any, DynArray that)
+  {
+    any.insert_Object(that);
+  }
+
+  /**
+   * Extract the DynArray from given Any.
+   * 
+   * @throws BAD_OPERATION if the passed Any does not contain DynArray.
+   */
+  public static DynArray extract(Any any)
+  {
+    return narrow(any.extract_Object());
+  }
+
+  /**
+   * Get the DynArray repository id.
+   * 
+   * @return "IDL:omg.org/DynamicAny/DynArray:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynArray:1.0";
+  }
+
+  /**
+   * This should read DynArray from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static DynArray read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * This should read DynArray from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynArray value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArrayOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArrayOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArrayOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynArrayOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,93 @@
+/* DynArrayOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.Any;
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+/**
+ * Defines operations, applicable for {@link DynArray}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynArrayOperations
+  extends DynAnyOperations
+{
+  /**
+   * Returns the array.
+   *
+   * @return the array of elements as an array of DynAny's.
+   */
+  DynAny[] get_elements_as_dyn_any();
+
+  /**
+   * Returns the array.
+   *
+   * @return the array of elements as an array of Any's.
+   */
+  Any[] get_elements();
+
+  /**
+   * Sets the array.
+   *
+   * @param value the array of elements an DynAny's.
+   *
+   * @throws TypeMismatch if the members of the passed array does not match
+   * array component type.
+   *
+   * @throws InvalidValue if the number of elements in the passed array is not
+   * the same as the size of this DynArray.
+   */
+  void set_elements_as_dyn_any(DynAny[] value)
+    throws TypeMismatch, InvalidValue;
+
+  /**
+   * Sets the array.
+   *
+   * @param value the array of elements as Any's.
+   *
+   * @throws TypeMismatch if the members of the passed array does not match
+   * array component type.
+   *
+   * @throws InvalidValue if the number of elements in the passed array is not
+   * the same as the size of this DynArray.
+   */
+  void set_elements(Any[] value)
+    throws TypeMismatch, InvalidValue;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnum.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnum.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnum.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnum.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,56 @@
+/* DynEnum.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Defines the dynamic enumeration. The value of the dynamic enumeration can be
+ * set by name or by integer code. The valid string values and integer codes are
+ * taken from the typecode, from which the enumeration was constructed. The
+ * enumeration is an undividable type without traversable components.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynEnum
+  extends DynEnumOperations, DynAny, IDLEntity, org.omg.CORBA.Object,
+  Serializable
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnumHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnumHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnumHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnumHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,173 @@
+/* DynEnumHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link DynEnum}. Following the 1.5 JDK
+ * specifications, DynEnum is always a local object, so the two methods of this
+ * helper ({@link #read} and {@link #write} are not in use, always throwing
+ * {@link MARSHAL}.
+ * 
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynEnumHelper
+{
+  /**
+   * Cast the passed object into the DynEnum. As DynEnum is a local object, the
+   * method just uses java type cast.
+   * 
+   * @param obj the object to narrow.
+   * @return narrowed instance.
+   * @throws BAD_PARAM if the passed object is not a DynEnum.
+   */
+  public static DynEnum narrow(org.omg.CORBA.Object obj)
+  {
+    try
+      {
+        return (DynEnum) obj;
+      }
+    catch (ClassCastException cex)
+      {
+        throw new BAD_PARAM(obj.getClass().getName() + " is not a DynEnum");
+      }
+  }
+  
+  /**
+   * Narrow the given object to the DynEnum. For the objects that are
+   * always local, this operation does not differ from the ordinary
+   * {@link #narrow} (ClassCastException will be thrown if narrowing something
+   * different).
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted DynEnum.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static DynEnum unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    return narrow(obj);
+  }    
+
+  /**
+   * Get the type code of the {@link DynEnum}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "DynEnum");
+  }
+
+  /**
+   * Insert the DynEnum into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * 
+   * @param that the DynEnum to insert.
+   */
+  public static void insert(Any any, DynEnum that)
+  {
+    any.insert_Object(that);
+  }
+
+  /**
+   * Extract the DynEnum from given Any.
+   * 
+   * @throws BAD_OPERATION if the passed Any does not contain DynEnum.
+   */
+  public static DynEnum extract(Any any)
+  {
+    return narrow(any.extract_Object());
+  }
+
+  /**
+   * Get the DynEnum repository id.
+   * 
+   * @return "IDL:omg.org/DynamicAny/DynEnum:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynEnum:1.0";
+  }
+
+  /**
+   * This should read DynEnum from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static DynEnum read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * This should read DynEnum from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynEnum value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnumOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnumOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnumOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynEnumOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,82 @@
+/* DynEnumOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+
+/**
+ * Defines operations, applicable to the dynamic enumeration. The value of the
+ * dynamic enumeration can be set by name or by integer code. The valid string
+ * values and integer codes are taken from the typecode, from which the
+ * enumeration was constructed. The enumeration is an undividable type without
+ * traversable components.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynEnumOperations
+  extends DynAnyOperations
+{
+  /**
+   * Get the current enumeration value, as string.
+   */
+  String get_as_string();
+
+  /**
+   * Get the current enumeration value, as int.
+   */
+  int get_as_ulong();
+
+  /**
+   * Set the current enumeration value, as string.
+   *
+   * @throws InvalidValue if the passed string is not one of the allowed values
+   * for this enumeration.
+   */
+  void set_as_string(String value)
+    throws InvalidValue;
+
+  /**
+   * Set the current enumeration value, as int.
+   *
+   * @throws InvalidValue if the passed string is not one of the allowed values
+   * for this enumeration.
+   */
+  void set_as_ulong(int value)
+    throws InvalidValue;
+
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixed.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixed.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixed.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixed.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,55 @@
+/* DynFixed.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Defines dynamic any, holding CORBA <code>fixed</code>. The operations on
+ * <code>fixed</code> (defined in {@link DynFixedOperations}) take and return
+ * this data type in its string representation.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynFixed
+  extends DynFixedOperations, DynAny, IDLEntity, org.omg.CORBA.Object,
+  Serializable
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixedHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixedHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixedHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixedHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,173 @@
+/* DynFixedHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link DynFixed}. Following the 1.5 JDK
+ * specifications, DynFixed is always a local object, so the two methods of this
+ * helper ({@link #read} and {@link #write} are not in use, always throwing
+ * {@link MARSHAL}.
+ * 
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynFixedHelper
+{
+  /**
+   * Cast the passed object into the DynFixed. As DynFixed is a local object,
+   * the method just uses java type cast.
+   * 
+   * @param obj the object to narrow.
+   * @return narrowed instance.
+   * @throws BAD_PARAM if the passed object is not a DynFixed.
+   */
+  public static DynFixed narrow(org.omg.CORBA.Object obj)
+  {
+    try
+      {
+        return (DynFixed) obj;
+      }
+    catch (ClassCastException cex)
+      {
+        throw new BAD_PARAM(obj.getClass().getName() + " is not a DynFixed");
+      }
+  }
+  
+  /**
+   * Narrow the given object to the DynFixed. For the objects that are
+   * always local, this operation does not differ from the ordinary
+   * {@link #narrow} (ClassCastException will be thrown if narrowing something
+   * different).
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted DynFixed.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static DynFixed unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    return narrow(obj);
+  }    
+
+  /**
+   * Get the type code of the {@link DynFixed}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "DynFixed");
+  }
+
+  /**
+   * Insert the DynFixed into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * 
+   * @param that the DynFixed to insert.
+   */
+  public static void insert(Any any, DynFixed that)
+  {
+    any.insert_Object(that);
+  }
+
+  /**
+   * Extract the DynFixed from given Any.
+   * 
+   * @throws BAD_OPERATION if the passed Any does not contain DynFixed.
+   */
+  public static DynFixed extract(Any any)
+  {
+    return narrow(any.extract_Object());
+  }
+
+  /**
+   * Get the DynFixed repository id.
+   * 
+   * @return "IDL:omg.org/DynamicAny/DynFixed:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynFixed:1.0";
+  }
+
+  /**
+   * This should read DynFixed from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static DynFixed read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * This should read DynFixed from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynFixed value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixedOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixedOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixedOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynFixedOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,71 @@
+/* DynFixedOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+/**
+ * Defines operations, applicable for DynAny, holding CORBA <code>fixed</code>.
+ * These operations take and return this data type in its string representation.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynFixedOperations
+  extends DynAnyOperations
+{
+  /**
+   * Get the value of the enclosed DynFixed, as string.
+   */
+  String get_value();
+
+  /**
+   * Set the value of the enclosed DynFixed, from string.
+   *
+   * @param fixed_value the value to set.
+   *
+   * @throws TypeMismatch if the passed string cannot be parsed into CORBA
+   * <code>fixed</code>. The valid string can only contain digits, decimal
+   * point and optional leading and trailing whitespace.
+   *
+   * @return true if the passed value can be represented without the loss of
+   * precision, false if some fractional digits were truncated.
+   */
+  boolean set_value(String fixed_value)
+    throws TypeMismatch, InvalidValue;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequence.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequence.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequence.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequence.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,54 @@
+/* DynSequence.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Defines a dynamic resizeable array with the optional upper size bound. All
+ * elements in this structure have the same type.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynSequence
+  extends DynSequenceOperations, DynAny, IDLEntity, org.omg.CORBA.Object,
+  Serializable
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequenceHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequenceHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequenceHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequenceHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,172 @@
+/* DynSequenceHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link DynSequence}. Following the 1.5 JDK
+ * specifications, DynSequence is always a local object, so the two methods of
+ * this helper ({@link #read} and {@link #write} are not in use, always
+ * throwing {@link MARSHAL}.
+ * 
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynSequenceHelper
+{
+  /**
+   * Cast the passed object into the DynSequence. As DynSequence is a local
+   * object, the method just uses java type cast.
+   * 
+   * @param obj the object to narrow.
+   * @return narrowed instance.
+   * @throws BAD_PARAM if the passed object is not a DynSequence.
+   */
+  public static DynSequence narrow(org.omg.CORBA.Object obj)
+  {
+    try
+      {
+        return (DynSequence) obj;
+      }
+    catch (ClassCastException cex)
+      {
+        throw new BAD_PARAM(obj.getClass().getName() + " is not a DynSequence");
+      }
+  }
+  
+  /**
+   * Narrow the given object to the DynSequence. For the objects that are
+   * always local, this operation does not differ from the ordinary
+   * {@link #narrow} (ClassCastException will be thrown if narrowing something
+   * different).
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted DynSequence.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static DynSequence unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    return narrow(obj);
+  }    
+
+  /**
+   * Get the type code of the {@link DynSequence}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "DynSequence");
+  }
+
+  /**
+   * Insert the DynSequence into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * 
+   * @param that the DynSequence to insert.
+   */
+  public static void insert(Any any, DynSequence that)
+  {
+    any.insert_Object(that);
+  }
+
+  /**
+   * Extract the DynSequence from given Any.
+   * 
+   * @throws BAD_OPERATION if the passed Any does not contain DynSequence.
+   */
+  public static DynSequence extract(Any any)
+  {
+    return narrow(any.extract_Object());
+  }
+
+  /**
+   * Get the DynSequence repository id.
+   * 
+   * @return "IDL:omg.org/DynamicAny/DynSequence:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynSequence:1.0";
+  }
+
+  /**
+   * This should read DynSequence from the CDR input stream, but (following the
+   * JDK 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static DynSequence read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * This should read DynSequence from the CDR input stream, but (following the
+   * JDK 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynSequence value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequenceOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequenceOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequenceOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynSequenceOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,124 @@
+/* DynSequenceOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.Any;
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+/**
+ * Defines operations, applicable to DynSequence. These are basically the same
+ * operations as for {@link DynArrayOperations} with additional possibility to
+ * change the length of the sequence. If the
+ * {@link org.omg.CORBA.TypeCode#length()} method of the sequence typecode
+ * returns positive value, it is treated as a sequence bound. An attempt to
+ * extend the sequence above its bound raises {@link InvalidValue}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynSequenceOperations
+  extends DynAnyOperations
+{
+  /**
+   * Get the length of the sequence.
+   *
+   * @return the current sequence length that was taken from typecode or changed
+   * with set_length.
+   */
+  int get_length();
+
+  /**
+   * Set the length of the sequence. If the sequence is shortened, the tailing
+   * members are discarded, but the remaining content is not affected. If the
+   * new length is larger than the previous one, the new members are added to
+   * the end of the sequence. These new members are initialised to they default
+   * values.
+   *
+   * @param length the new length of the sequence.
+   *
+   * @throws InvalidValue if this is a bounded sequence, and the size being set
+   * exceeds the sequence bound.
+   */
+  public void set_length(int length)
+    throws InvalidValue;
+
+  /**
+   * Returns the array, containing the sequence elements.
+   *
+   * @return the array of elements as an array of DynAny's.
+   */
+  DynAny[] get_elements_as_dyn_any();
+
+  /**
+   * Returns the array, containing the sequence elements.
+   *
+   * @return the array of elements as an array of Any's.
+   */
+  Any[] get_elements();
+
+  /**
+   * Sets the sequence elements from the array. The length of the sequence is
+   * set to the length of the passed array.
+   *
+   * @param value the array of elements an DynAny's.
+   *
+   * @throws TypeMismatch if the members of the passed array does not match
+   * sequence component type.
+   *
+   * @throws InvalidValue if this is a bounded sequence and the number of
+   * elements in the passed array exceeds the sequence bound.
+   */
+  void set_elements_as_dyn_any(DynAny[] value)
+    throws TypeMismatch, InvalidValue;
+
+  /**
+   * Sets the sequence elements from the array. The length of the sequence is
+   * set to the length of the passed array.
+   *
+   * @param value the array of elements as Any's.
+   *
+   *
+   * @throws TypeMismatch if the members of the passed array does not match
+   * sequence component type.
+   *
+   * @throws InvalidValue if this is a bounded sequence and the number of
+   * elements in the passed array exceeds the sequence bound.
+   */
+  void set_elements(Any[] value)
+    throws TypeMismatch, InvalidValue;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStruct.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStruct.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStruct.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStruct.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,54 @@
+/* DynStruct.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Defines a fixed size structure with the named fields that may have different
+ * types.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynStruct
+  extends DynStructOperations, DynAny, IDLEntity, org.omg.CORBA.Object,
+  Serializable
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStructHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStructHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStructHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStructHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,172 @@
+/* DynStructHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link DynStruct}. Following the 1.5 JDK
+ * specifications, DynStruct is always a local object, so the two methods of
+ * this helper ({@link #read} and {@link #write} are not in use, always
+ * throwing {@link MARSHAL}.
+ * 
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynStructHelper
+{
+  /**
+   * Cast the passed object into the DynStruct. As DynStruct is a local object,
+   * the method just uses java type cast.
+   * 
+   * @param obj the object to narrow.
+   * @return narrowed instance.
+   * @throws BAD_PARAM if the passed object is not a DynStruct.
+   */
+  public static DynStruct narrow(org.omg.CORBA.Object obj)
+  {
+    try
+      {
+        return (DynStruct) obj;
+      }
+    catch (ClassCastException cex)
+      {
+        throw new BAD_PARAM(obj.getClass().getName() + " is not a DynStruct");
+      }
+  }
+  
+  /**
+   * Narrow the given object to the DynStruct. For the objects that are
+   * always local, this operation does not differ from the ordinary
+   * {@link #narrow} (ClassCastException will be thrown if narrowing something
+   * different).
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted DynStruct.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static DynStruct unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    return narrow(obj);
+  }    
+
+  /**
+   * Get the type code of the {@link DynStruct}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "DynStruct");
+  }
+
+  /**
+   * Insert the DynStruct into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * 
+   * @param that the DynStruct to insert.
+   */
+  public static void insert(Any any, DynStruct that)
+  {
+    any.insert_Object(that);
+  }
+
+  /**
+   * Extract the DynStruct from given Any.
+   * 
+   * @throws BAD_OPERATION if the passed Any does not contain DynStruct.
+   */
+  public static DynStruct extract(Any any)
+  {
+    return narrow(any.extract_Object());
+  }
+
+  /**
+   * Get the DynStruct repository id.
+   * 
+   * @return "IDL:omg.org/DynamicAny/DynStruct:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynStruct:1.0";
+  }
+
+  /**
+   * This should read DynStruct from the CDR input stream, but (following the
+   * JDK 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static DynStruct read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * This should read DynStruct from the CDR input stream, but (following the
+   * JDK 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynStruct value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStructOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStructOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStructOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynStructOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,140 @@
+/* DynStructOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.TCKind;
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+/**
+ * Defines the operations, applicable to the DynStructure.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynStructOperations
+  extends DynAnyOperations
+{
+  /**
+   * Get the kind of the structure field at the current position.
+   *
+   * @return the kind of field.
+   *
+   * @throws TypeMismatch for an empty structure (normally exception).
+   * @throws InvalidValue if the current position does not indicate a memeber.
+   */
+  TCKind current_member_kind()
+    throws TypeMismatch, InvalidValue;
+
+  /**
+   * Get the name of the structure field at the current position.
+   *
+   * @return the name of the field.
+   *
+   * @throws TypeMismatch for an empty structure (normally exception).
+   * @throws InvalidValue if the current position does not indicate a memeber.
+   */
+  String current_member_name()
+    throws TypeMismatch, InvalidValue;
+
+  /**
+   * Return array, describing describing the name and the value of each member
+   * in the structure.
+   *
+   * @return an array of NameDynAnyPair's, each defining a single field in this
+   * structure.
+   */
+  NameDynAnyPair[] get_members_as_dyn_any();
+
+  /**
+   * Return array, describing describing the name and the value of each member
+   * in the structure.
+   *
+   * @return an array of NameValuePair's, each defining a single field in this
+   * structure.
+   */
+  NameValuePair[] get_members();
+
+  /**
+   * Set the structure contend from the array, where each member defines the
+   * name and value of the structure field. If the passed array is not empty,
+   * the current position is set to the first member.
+   *
+   * The members of array must follow in the same order as the structure fields,
+   * how they are defined in the typecode. The name-based value assignment is
+   * not supported.
+   *
+   * @specnote The name-based value assignment is not supported by Sun's jdk
+   * 1.4.
+   *
+   * @param an array of NameDynValuePair's, each defining a single field in the
+   * structure.
+   *
+   * @throws TypeMismatch if the member of the passed array has a different type
+   * than the corresponding structure field.
+   *
+   * @throws InvalidValue if the size of the passed array is not the same as the
+   * number of fields in this structure.
+   */
+  void set_members_as_dyn_any(NameDynAnyPair[] value)
+    throws TypeMismatch, InvalidValue;
+
+  /**
+   * Set the structure contend from the array, where each member defines the
+   * name and value of the structure field. If the passed array is not empty,
+   * the current position is set to the first member.
+   *
+   * The members of array must follow in the same order as the structure fields,
+   * how they are defined in the typecode. The name-based value assignment is
+   * not supported.
+   *
+   * @specnote The name-based value assignment is not supported by Sun's jdk
+   * 1.4.
+   *
+   * @param an array of NameValuePair's, each defining a single field in the
+   * structure.
+   *
+   * @throws TypeMismatch if the member of the passed array has a different type
+   * than the corresponding structure field.
+   *
+   * @throws InvalidValue if the size of the passed array is not the same as the
+   * number of fields in this structure.
+   */
+  void set_members(NameValuePair[] value)
+    throws TypeMismatch, InvalidValue;
+
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnion.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnion.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnion.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnion.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,54 @@
+/* DynUnion.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Defines a fixed size structure with the named fields that may have different
+ * types.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynUnion
+  extends DynUnionOperations, DynAny, IDLEntity, org.omg.CORBA.Object,
+  Serializable
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnionHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnionHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnionHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnionHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,172 @@
+/* DynUnionHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link DynUnion}. Following the 1.5 JDK
+ * specifications, DynUnion is always a local object, so the two methods of this
+ * helper ({@link #read} and {@link #write} are not in use, always throwing
+ * {@link MARSHAL}.
+ * 
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynUnionHelper
+{
+  /**
+   * Cast the passed object into the DynUnion. As DynUnion is a local object,
+   * the method just uses java type cast.
+   * 
+   * @param obj the object to narrow.
+   * @return narrowed instance.
+   * @throws BAD_PARAM if the passed object is not a DynUnion.
+   */
+  public static DynUnion narrow(org.omg.CORBA.Object obj)
+  {
+    try
+      {
+        return (DynUnion) obj;
+      }
+    catch (ClassCastException cex)
+      {
+        throw new BAD_PARAM(obj.getClass().getName() + " is not a DynUnion");
+      }
+  }
+  
+  /**
+   * Narrow the given object to the DynUnion. For the objects that are
+   * always local, this operation does not differ from the ordinary
+   * {@link #narrow} (ClassCastException will be thrown if narrowing something
+   * different).
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted DynUnion.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static DynUnion unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    return narrow(obj);
+  }    
+
+  /**
+   * Get the type code of the {@link DynUnion}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "DynUnion");
+  }
+
+  /**
+   * Insert the DynUnion into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * 
+   * @param that the DynUnion to insert.
+   */
+  public static void insert(Any any, DynUnion that)
+  {
+    any.insert_Object(that);
+  }
+
+  /**
+   * Extract the DynUnion from given Any.
+   * 
+   * @throws BAD_OPERATION if the passed Any does not contain DynUnion.
+   */
+  public static DynUnion extract(Any any)
+  {
+    return narrow(any.extract_Object());
+  }
+
+  /**
+   * Get the DynUnion repository id.
+   * 
+   * @return "IDL:omg.org/DynamicAny/DynUnion:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynUnion:1.0";
+  }
+
+  /**
+   * This should read DynUnion from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static DynUnion read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * This should read DynUnion from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynUnion value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnionOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnionOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnionOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynUnionOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,149 @@
+/* DynUnionOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.TCKind;
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+/**
+ * Defines the operations, applicable to the DynUnion. The DynUnion has only two
+ * valid positions:
+ * <ul>
+ * <li>0 - contains the discriminator of the union. The discriminator defines,
+ * which of the union variants is currently active.</li>
+ * <li>1 - contains the currently active variant of the union content (a union
+ * member). </li>
+ * </ul>
+ * The size of the union is normally 2. If the discriminator value defines no
+ * valid variant, the union consists of discriminator only, having the size 1.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynUnionOperations
+  extends DynAnyOperations
+{
+  /**
+   * <p>Get the value of discriminator, defining which content variant
+   * (member) is active.
+   * </p><p>
+   * In the current implementation, the later changes on the returned value
+   * alter the state of the union via implemented internal listener.
+   * </p>
+   */
+  DynAny get_discriminator();
+
+  /**
+   * <p>Set the value of discriminator, activating the member variant that is
+   * consistent with the discriminator value. If the current member variant
+   * matches the discriminator being set, it is unchanged. Otherwise, it is
+   * replaced by the matching member variant with fields, initialised to default
+   * values. The current position is set to 0 if the discriminator value does
+   * not match any member variant. Otherwise, the current position is set to 1,
+   * index of the member variant.
+   * </p>
+   * @throws TypeMismatch if the discriminator has a wrong type of this union.
+   */
+  void set_discriminator(DynAny aDiscriminator)
+                  throws TypeMismatch;
+
+  /**
+   * Get the kind of the union descriminator.
+   *
+   * @return the TCKind value of the discriminator typecode.
+   */
+  TCKind discriminator_kind();
+
+  /**
+   * Get the current variant of the union content.
+   *
+   * @return the current member of the union. This reference is only valid as
+   * long as the current member does not change.
+   *
+   * @throws InvalidValue if the union has no active member.
+   */
+  DynAny member()
+         throws InvalidValue;
+
+  /**
+   * Returns the kind of the currently active union member.
+   *
+   * @return the TCKind value of the union member.
+   *
+   * @throws InvalidValue if the union has no active member.
+   */
+  TCKind member_kind()
+              throws InvalidValue;
+
+  /**
+   * Returns the name of the currently active union member.
+   *
+   * @return the TCKind value of the union member.
+   *
+   * @throws InvalidValue if the union has no active member.
+   */
+  String member_name()
+              throws InvalidValue;
+
+  /**
+   * Returns true if the union has no active member. This happens if If the
+   * discriminator value defines no valid variant. Such union consists of
+   * discriminator only, having the size 1.
+   */
+  boolean has_no_active_member();
+
+  /**
+   * Set the discriminator to default value. The current position is set to 0.
+   * This also sets the content variant to the default variant, and the size of
+   * the union becomes 2.
+   *
+   * @throws TypeMismatch if the default case is not defined for this union.
+   */
+  void set_to_default_member()
+                      throws TypeMismatch;
+
+  /**
+   * Set the discriminator to value that does not correspond any content variant
+   * (any union <code>case</code> label). The current position is set to 0.
+   * The size of the union becomes 0.
+   *
+   * @throws TypeMismatch if the union has explicit default case.
+   */
+  void set_to_no_active_member()
+                        throws TypeMismatch;
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValue.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValue.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValue.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValue.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,58 @@
+/* DynValue.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ * Defines a non boxed value type. From the view point of DynAny, the Value is
+ * very much like structure. The access to fields of this structer are supported
+ * via {@link DynValueOperations} interface.Unlike structure, the value can also
+ * be equal to <code>null</code> that is supported via
+ * {@link DynValueCommonOperations} interface.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynValue
+  extends DynValueOperations, DynValueCommon, DynAny, IDLEntity,
+  org.omg.CORBA.Object, Serializable
+{
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueBox.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueBox.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueBox.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueBox.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,55 @@
+/* DynValueBox.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * A "ValueBox" is a Value type container, holding a single instance of the
+ * other CORBA type. This content can be set to <code>null</code>.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynValueBox
+  extends DynValueBoxOperations, DynValueCommon, DynAny, IDLEntity,
+    org.omg.CORBA.Object, Serializable
+{
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueBoxOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueBoxOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueBoxOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueBoxOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,91 @@
+/* DynValueBoxOperation.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.Any;
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+/**
+ * Defines operations, applicable for the boxed value type.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynValueBoxOperations
+  extends DynValueCommonOperations, DynAnyOperations
+{
+  /**
+   * Get the return the content of the "box" as the DynAny.
+   *
+   * @throws InvalidValue if the object is holding <code>null</code>.
+   */
+  DynAny get_boxed_value_as_dyn_any()
+    throws InvalidValue;
+
+  /**
+   * Get the return the content of the "box" as the Any.
+   *
+   * @throws InvalidValue if the object is holding <code>null</code>.
+   */
+  Any get_boxed_value()
+    throws InvalidValue;
+
+  /**
+   * Set the value of the "box" from DynAny.
+   *
+   * @param boxIt a value to box.
+   *
+   * @throws TypeMismatch if the type is not matching the current boxed value
+   * type.
+   */
+  void set_boxed_value_as_dyn_any(DynAny boxIt)
+    throws TypeMismatch;
+
+  /**
+   * Set the value of the "box" as Any.
+   *
+   * @param boxIt a value to place into the box.
+   *
+   * @throws TypeMismatch if the type is not matching the current boxed value
+   * type.
+   */
+  void set_boxed_value(Any boxIt)
+    throws TypeMismatch;
+
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueCommon.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueCommon.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueCommon.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueCommon.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,76 @@
+/* DynValueCommon.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * Defines DynAny that may hold CORBA <code>null</code>. The
+ * {@link DynValueCommonOperations} provides methods for setting the value to
+ * <code>null</code> or non-<code>null</code> and checking if the value is
+ * <code>null</code>.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynValueCommon
+  extends DynValueCommonOperations, DynAny, IDLEntity, org.omg.CORBA.Object,
+  Serializable
+{
+  /**
+   * Check if this {@link DynAny} is holding the <code>null</code>.
+   *
+   * @return true if this {@link DynAny} is holding the <code>null</code>,
+   * false otherwise.
+   */
+  boolean is_null();
+
+  /**
+   * Set the value of this {@link DynAny} to CORBA <code>null</code>.
+   */
+  void set_to_null();
+
+  /**
+   * Set the value of this {@link DynAny} to the default non-null value. The
+   * target {@link DynAny} creates a new data structure, intialised to the
+   * agreed default values, as defined in {@link DynAnyFactoryOperations}.
+   */
+  void set_to_value();
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueCommonOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueCommonOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueCommonOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueCommonOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,69 @@
+/* DynValueCommonOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+/**
+ * Provides operations, applicable to {@link DynAny}s that may hold CORBA
+ * <code>null</code>.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynValueCommonOperations
+  extends DynAnyOperations
+{
+  /**
+   * Check if this {@link DynAny} is holding the <code>null</code>.
+   * 
+   * @return true if this {@link DynAny} is holding the <code>null</code>,
+   * false otherwise.
+   */
+  boolean is_null();
+
+  /**
+   * Set the value of this {@link DynAny} to CORBA <code>null</code>.
+   */
+  void set_to_null();
+
+  /**
+   * Set the value of this {@link DynAny} to the default non-null value. The
+   * target {@link DynAny} creates a new data structure, intialised to the
+   * agreed default values, as defined in {@link DynAnyFactoryOperations}.
+   */
+  void set_to_value();
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,172 @@
+/* DynValueHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.BAD_PARAM;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.Any;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * The helper operations for {@link DynValue}. Following the 1.5 JDK
+ * specifications, DynValue is always a local object, so the two methods of this
+ * helper ({@link #read} and {@link #write} are not in use, always throwing
+ * {@link MARSHAL}.
+ * 
+ * @specnote always throwing MARSHAL in read and write ensures compatibility
+ * with other popular implementations like Sun's.
+ * 
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class DynValueHelper
+{
+  /**
+   * Cast the passed object into the DynValue. As DynValue is a local object,
+   * the method just uses java type cast.
+   * 
+   * @param obj the object to narrow.
+   * @return narrowed instance.
+   * @throws BAD_PARAM if the passed object is not a DynValue.
+   */
+  public static DynValue narrow(org.omg.CORBA.Object obj)
+  {
+    try
+      {
+        return (DynValue) obj;
+      }
+    catch (ClassCastException cex)
+      {
+        throw new BAD_PARAM(obj.getClass().getName() + " is not a DynValue");
+      }
+  }
+  
+  /**
+   * Narrow the given object to the DynValue. For the objects that are
+   * always local, this operation does not differ from the ordinary
+   * {@link #narrow} (ClassCastException will be thrown if narrowing something
+   * different).
+   * 
+   * @param obj the object to cast.
+   * 
+   * @return the casted DynValue.
+   * 
+   * @since 1.5 
+   * 
+   * @see OMG issue 4158.
+   */
+  public static DynValue unchecked_narrow(org.omg.CORBA.Object obj)
+  {
+    return narrow(obj);
+  }    
+
+  /**
+   * Get the type code of the {@link DynValue}.
+   */
+  public static TypeCode type()
+  {
+    return OrbRestricted.Singleton.create_interface_tc(id(), "DynValue");
+  }
+
+  /**
+   * Insert the DynValue into the given Any.
+   * 
+   * @param any the Any to insert into.
+   * 
+   * @param that the DynValue to insert.
+   */
+  public static void insert(Any any, DynValue that)
+  {
+    any.insert_Object(that);
+  }
+
+  /**
+   * Extract the DynValue from given Any.
+   * 
+   * @throws BAD_OPERATION if the passed Any does not contain DynValue.
+   */
+  public static DynValue extract(Any any)
+  {
+    return narrow(any.extract_Object());
+  }
+
+  /**
+   * Get the DynValue repository id.
+   * 
+   * @return "IDL:omg.org/DynamicAny/DynValue:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/DynValue:1.0";
+  }
+
+  /**
+   * This should read DynValue from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static DynValue read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * This should read DynValue from the CDR input stream, but (following the JDK
+   * 1.5 API) it does not.
+   * 
+   * @param input a org.omg.CORBA.portable stream to read from.
+   * 
+   * @specenote Sun throws the same exception.
+   * 
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, DynValue value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueOperations.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueOperations.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueOperations.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/DynValueOperations.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,134 @@
+/* DynValueOperations.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.TCKind;
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+/**
+ * Defines operations, applicable to DynValue. From the view point of DynAny,
+ * the Value is very much like structure. However, differently from the
+ * structure, the value type can also have private members. The private members
+ * of DynValue are also accessible via this interface, but this possibility
+ * should only be used in applications like in debuggers or inter-orb bridges.
+ * Unlike structure, the value can also be equal to <code>null</code>.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public interface DynValueOperations
+  extends DynAnyOperations, DynValueCommonOperations
+{
+  /**
+   * Get the kind of the current member.
+   *
+   * @return the kind of member at the current position.
+   *
+   * @throws TypeMismatch if this DynValue is holding <code>null</code>.
+   * @thorws InvalidValue if the current position does not indicate the member.
+   */
+  TCKind current_member_kind()
+    throws TypeMismatch, InvalidValue;
+
+  /**
+   * Get the name of the current member.
+   *
+   * @return the name of the current member as defined by the typecode. May be
+   * an empty string.
+   *
+   * @throws TypeMismatch if this DynValue is holding <code>null</code>.
+   * @thorws InvalidValue if the current position does not indicate the member.
+   */
+  String current_member_name()
+    throws TypeMismatch, InvalidValue;
+
+  /**
+   * Get all members as an array of the named DynAny's. The returned names are
+   * set as they are defined by typecode.
+   *
+   * @return the array, representing the members of this instance of value.
+   *
+   * @throws InvalidValue if this DynValue is holding <code>null</code>.
+   */
+  NameDynAnyPair[] get_members_as_dyn_any()
+    throws InvalidValue;
+
+  /**
+   * Get all members as an array of the named Any's. The returned names are set
+   * as they are defined by typecode.
+   *
+   * @return the array, representing the members of this instance of value.
+   *
+   * @throws InvalidValue if this DynValue is holding <code>null</code>.
+   */
+  NameValuePair[] get_members()
+    throws InvalidValue;
+
+  /**
+   * Set all members from the array of the named Any's.
+   *
+   * @param value the array, where the data for fields of the structure must
+   * occur exactly in the same order, as defined by typecode.
+   *
+   * @throws TypeMismatch if the type or name of the array member does not match
+   * the name and type of the corresponding field in the DynValue data
+   * structure. The empty string is assumed matching any name.
+   *
+   * @throws InvalidValue if the size of the array does not match the number of
+   * fields.
+   */
+  void set_members_as_dyn_any(NameDynAnyPair[] value)
+    throws TypeMismatch, InvalidValue;
+
+  /**
+   * Set all members from the array of the named Any's.
+   *
+   * @param value the array, where the data for fields of the structure must
+   * occur exactly in the same order, as defined by typecode.
+   *
+   * @throws TypeMismatch if the type or name of the array member does not match
+   * the name and type of the corresponding field in the DynValue data
+   * structure. The empty string is assumed matching any name.
+   *
+   * @throws InvalidValue if the size of the array does not match the number of
+   * fields.
+   */
+  void set_members(NameValuePair[] value)
+    throws TypeMismatch, InvalidValue;
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/FieldNameHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/FieldNameHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/FieldNameHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/FieldNameHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,120 @@
+/* FieldNameHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper for the FieldName.  The fields {@link NameValuePair#id},
+ * {@link NameDynAnyPair#id} and return values of methods
+ * <code>current_member_name()</code>, <code>member_name()</code> in several
+ * interfaces officially have the "FieldName" type. This type is directly
+ * mapped into java String and needs no helper. The helper
+ * is included only as a part of the formal standard.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class FieldNameHelper
+{
+  /**
+   * Insert the FieldName into Any (uses {@link Any.insert_string}).
+   *
+   * @param a the Any to insert into.
+   * @param that the string to insert.
+   */
+  public static void insert(Any a, String that)
+  {
+    a.insert_string(that);
+  }
+
+  /**
+   * Extract the FieldName from Any ((uses {@link Any.extract_string}).
+   *
+   * @param a the Any to extract from.
+   */
+  public static String extract(Any a)
+  {
+    return a.extract_string();
+  }
+
+  /**
+   * Return an alias typecode.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    return orb.create_alias_tc(id(), "FieldName", orb.create_string_tc(0));
+  }
+
+  /**
+   * Return the FieldName repository id.
+   * @return "IDL:omg.org/DynamicAny/FieldName:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/FieldName:1.0";
+  }
+
+  /**
+   * Calls {@link InputStream#read_string()}.
+   *
+   * @param instream the stream to read from.
+   */
+  public static String read(InputStream istream)
+  {
+    return istream.read_string();
+  }
+
+  /**
+   * Calls {@link OutputStream#write_string()}.
+   *
+   * @param ostream the stream to write into.
+   * @param value the string (FieldName) value to write.
+   */
+  public static void write(OutputStream ostream, String value)
+  {
+    ostream.write_string(value);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPair.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPair.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPair.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPair.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,87 @@
+/* NameDynAnyPair.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * Stores the named value, representing the name by string and the value by
+ * {@link DynAny}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NameDynAnyPair
+  implements IDLEntity, Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -1992533286932908564L;
+
+  /**
+   * The name of the named value.
+   */
+  public String id;
+
+  /**
+   * The value of the named value.
+   */
+  public DynAny value;
+
+  /**
+   * Create unitialised instance with both fields left with default
+   * <code>null</code> value.
+   */
+  public NameDynAnyPair()
+  {
+  }
+
+  /**
+   * Create an instance with the given initial values.
+   *
+   * @param aName the name of the named value.
+   * @param aValue the value of the named value.
+   */
+  public NameDynAnyPair(String aName, DynAny aValue)
+  {
+    id = aName;
+    value = aValue;
+  }
+}

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPairHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPairHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPairHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPairHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,164 @@
+/* NameDynAnyPairHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.NameDynAnyPairHolder;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TCKind;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations for the structure {@link NameDynAnyPair}.
+ *
+ * Following the 1.5 JDK specifications, DynAny (and hence any structure,
+ * containing DynAny) is always a local object, so the two methods of this
+ * helper ({@link #read} and {@link #write} are not in use, always throwing
+ * {@link MARSHAL}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NameDynAnyPairHelper
+{
+  /**
+   * Extract the NameDynAnyPair from given Any.
+   * This method uses the NameDynAnyPairHolder.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain NameDynAnyPair.
+   */
+  public static NameDynAnyPair extract(Any any)
+  {
+    try
+      {
+        return ((NameDynAnyPairHolder) any.extract_Streamable()).value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("NameDynAnyPair expected");
+        bad.initCause(cex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the NameDynAnyPair repository id.
+   *
+   * @return "IDL:omg.org/DynamicAny/NameDynAnyPair:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/NameDynAnyPair:1.0";
+  }
+
+  /**
+   * Create the NameDynAnyPair typecode (structure,
+   * named "NameDynAnyPair").
+   * The typecode states that the structure contains the
+   * following fields: id, value.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    StructMember[] members = new StructMember[ 2 ];
+    
+    TypeCode field;
+    
+    field =
+      orb.create_alias_tc("IDL:omg.org/DynamicAny/FieldName:1.0",
+                          "FieldName",
+                          orb.get_primitive_tc(TCKind.tk_string)
+      );
+    members [ 0 ] = new StructMember("id", field, null);
+    
+    field = DynAnyHelper.type();
+    members [ 1 ] = new StructMember("value", field, null);
+    return orb.create_struct_tc(id(), "NameDynAnyPair", members);
+  }
+
+  /**
+   * Insert the NameDynAnyPair into the given Any.
+   * This method uses the NameDynAnyPairHolder.
+   *
+   * @param any the Any to insert into.
+   * @param that the NameDynAnyPair to insert.
+   */
+  public static void insert(Any any, NameDynAnyPair that)
+  {
+    any.insert_Streamable(new NameDynAnyPairHolder(that));
+  }
+
+  /**
+   * The method should read this object from the CDR input stream, but
+   * (following the JDK 1.5 API) it does not.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   *
+   * @specenote Sun throws the same exception.
+   *
+   * @throws MARSHAL always.
+   */
+  public static NameDynAnyPair read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * The method should write this object to the CDR input stream, but
+   * (following the JDK 1.5 API) it does not.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   *
+   * @specenote Sun throws the same exception.
+   *
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, NameDynAnyPair value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPairSeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPairSeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPairSeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameDynAnyPairSeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,145 @@
+/* NameDynAnyPairSeq.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.NameDynAnyPairSeqHolder;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations for the array of {@link NameDynAnyPair}
+ * ({@link NameDynAnyPairSeq}).
+ *
+ * Following the 1.5 JDK specifications, DynAny (and hence the sequence
+ * of structures, containing DynAny) is always a local object.
+ * Hence the two methods of this helper ({@link #read} and {@link #write} are
+ * not in use, always throwing {@link MARSHAL}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NameDynAnyPairSeqHelper
+{
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    TypeCode t = orb.create_sequence_tc(0, NameDynAnyPairHelper.type());
+    return orb.create_alias_tc(id(), "NameDynAnyPairSeq", t);
+  }
+
+  /**
+   * Insert the NameDynAnyPairSeq into the given Any.
+   * This method uses the NameDynAnyPairSeqHolder.
+   *
+   * @param any the Any to insert into.
+   * @param those the NameDynAnyPair[] to insert.
+   */
+  public static void insert(Any any, NameDynAnyPair[] those)
+  {
+    any.insert_Streamable(new NameDynAnyPairSeqHolder(those));
+  }
+
+  /**
+   * Extract the NameDynAnyPairSeq from given Any.
+   * This method uses the NameDynAnyPairSeqHolder.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain NameDynAnyPairSeq.
+   */
+  public static NameDynAnyPair[] extract(Any any)
+  {
+    try
+      {
+        return ((NameDynAnyPairSeqHolder) any.extract_Streamable()).value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("NameDynAnyPairSeq expected");
+        bad.initCause(cex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the NameDynAnyPairSeq repository id.
+   *
+   * @return "IDL:omg.org/DynamicAny/NameDynAnyPairSeq:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/NameDynAnyPairSeq:1.0";
+  }
+
+  /**
+   * The method should read this object from the CDR input stream, but
+   * (following the JDK 1.5 API) it does not.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   *
+   * @specenote Sun throws the same exception.
+   *
+   * @throws MARSHAL always.
+   */
+  public static NameDynAnyPair[] read(InputStream input)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+
+  /**
+   * The method should write this object to the CDR input stream, but
+   * (following the JDK 1.5 API) it does not.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   *
+   * @specenote Sun throws the same exception.
+   *
+   * @throws MARSHAL always.
+   */
+  public static void write(OutputStream output, NameDynAnyPair[] value)
+  {
+    throw new MARSHAL(DynAnyFactoryHelper.not_applicable(id()));
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePair.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePair.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePair.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePair.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,90 @@
+/* NameValuePair.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.DynStruct;
+import org.omg.CORBA.portable.IDLEntity;
+
+import java.io.Serializable;
+
+/**
+ * Holds the value, having the given name(id). This class is used by with
+ * {@link DynStruct} to name the fields of the record (structure).
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public final class NameValuePair
+  implements Serializable, IDLEntity
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -1289460542874201736L;
+
+  /**
+   * The value of the structure record.
+   */
+  public Any value;
+
+  /**
+   * The name of the structure record.
+   */
+  public String id;
+
+  /**
+   * Cretes an unitialised instance of the name-value pair.
+   */
+  public NameValuePair()
+  {
+  }
+
+  /**
+   * Creates the name-value pair, initialising the fields to the passed values.
+   *
+   * @param aName the name (also called id) of the name-value pair, normally the
+   * name of the structure field.
+   *
+   * @param aValue the value of the name-value pair.
+   */
+  public NameValuePair(String aName, Any aValue)
+  {
+    id = aName;
+    value = aValue;
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePairHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePairHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePairHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePairHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,153 @@
+/* NameValuePairHelper.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.NameValuePairHolder;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.StructMember;
+import org.omg.CORBA.TCKind;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations for the structure {@link NameValuePair}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NameValuePairHelper
+{
+  /**
+   * Create the NameValuePair typecode (structure,
+   * named "NameValuePair").
+   * The typecode states that the structure contains the
+   * following fields: id, value.
+   */
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    StructMember[] members = new StructMember[ 2 ];
+    
+    TypeCode field;
+    
+    field =
+      orb.create_alias_tc("IDL:omg.org/DynamicAny/FieldName:1.0",
+                          "FieldName",
+                          orb.get_primitive_tc(TCKind.tk_string)
+      );
+    members [ 0 ] = new StructMember("id", field, null);
+    
+    field = orb.get_primitive_tc(TCKind.tk_any);
+    members [ 1 ] = new StructMember("value", field, null);
+    return orb.create_struct_tc(id(), "NameValuePair", members);
+  }
+
+  /**
+   * Insert the NameValuePair into the given Any.
+   * This method uses the NameValuePairHolder.
+   *
+   * @param any the Any to insert into.
+   * @param that the NameValuePair to insert.
+   */
+  public static void insert(Any any, NameValuePair that)
+  {
+    any.insert_Streamable(new NameValuePairHolder(that));
+  }
+
+  /**
+   * Extract the NameValuePair from given Any.
+   * This method uses the NameValuePairHolder.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain NameValuePair.
+   */
+  public static NameValuePair extract(Any any)
+  {
+    try
+      {
+        return ((NameValuePairHolder) any.extract_Streamable()).value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("NameValuePair expected");
+        bad.initCause(cex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the NameValuePair repository id.
+   *
+   * @return "IDL:omg.org/DynamicAny/NameValuePair:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/NameValuePair:1.0";
+  }
+
+  /**
+   * Read the structure from the CDR intput stream.
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   */
+  public static NameValuePair read(InputStream input)
+  {
+    NameValuePair value = new NameValuePair();
+    value.id = input.read_string();
+    value.value = input.read_any();
+    return value;
+  }
+
+  /**
+   * Write the structure to the CDR output stream.
+   *
+   * @param output a org.omg.CORBA.portable stream stream to write into.
+   * @param value a value to write.
+   */
+  public static void write(OutputStream output, NameValuePair value)
+  {
+    output.write_string(value.id);
+    output.write_any(value.value);
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePairSeqHelper.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePairSeqHelper.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePairSeqHelper.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/NameValuePairSeqHelper.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,141 @@
+/* NameValuePairSeq.java --
+   Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.Minor;
+import gnu.CORBA.NameValuePairSeqHolder;
+import gnu.CORBA.OrbRestricted;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.BAD_OPERATION;
+import org.omg.CORBA.ORB;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.InputStream;
+import org.omg.CORBA.portable.OutputStream;
+
+/**
+ * A helper operations for the array of {@link NameValuePair}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public abstract class NameValuePairSeqHelper
+{
+  public static TypeCode type()
+  {
+    ORB orb = OrbRestricted.Singleton;
+    TypeCode t = orb.create_sequence_tc(0, NameValuePairHelper.type());
+    return orb.create_alias_tc(id(), "NameValuePairSeq", t);
+  }
+
+  /**
+   * Insert the NameValuePairSeq into the given Any.
+   * This method uses the NameValuePairSeqHolder.
+   *
+   * @param any the Any to insert into.
+   * @param those the NameValuePair[] to insert.
+   */
+  public static void insert(Any any, NameValuePair[] those)
+  {
+    any.insert_Streamable(new NameValuePairSeqHolder(those));
+  }
+
+  /**
+   * Extract the NameValuePairSeq from given Any.
+   * This method uses the NameValuePairSeqHolder.
+   *
+   * @throws BAD_OPERATION if the passed Any does not contain NameValuePairSeq.
+   */
+  public static NameValuePair[] extract(Any any)
+  {
+    try
+      {
+        return ((NameValuePairSeqHolder) any.extract_Streamable()).value;
+      }
+    catch (ClassCastException cex)
+      {
+        BAD_OPERATION bad = new BAD_OPERATION("NameValuePairSeq expected");
+        bad.initCause(cex);
+        bad.minor = Minor.Any;        
+        throw bad;
+      }
+  }
+
+  /**
+   * Get the NameValuePairSeq repository id.
+   *
+   * @return "IDL:omg.org/DynamicAny/NameValuePairSeq:1.0", always.
+   */
+  public static String id()
+  {
+    return "IDL:omg.org/DynamicAny/NameValuePairSeq:1.0";
+  }
+
+  /**
+   * Read the sequence from the CDR intput stream.
+   * Expects the array size (as CORBA long), followed by
+   * the array members (if any).
+   *
+   * @param input a org.omg.CORBA.portable stream to read from.
+   */
+  public static NameValuePair[] read(InputStream input)
+  {
+    NameValuePair[] value;
+    value = new NameValuePair[ input.read_long() ];
+    for (int i = 0; i < value.length; i++)
+      value [ i ] = NameValuePairHelper.read(input);
+    return value;
+  }
+
+  /**
+   * Write the structure to the CDR output stream.
+   * Writes the array size (as CORBA long), followed by
+   * the array members (if any).
+   *
+   * @param output a org.omg.CORBA.portable stream stream to write into.
+   * @param value an array to write.
+   */
+  public static void write(OutputStream output, NameValuePair[] value)
+  {
+    output.write_long(value.length);
+    for (int i0 = 0; i0 < value.length; i0++)
+      {
+        NameValuePairHelper.write(output, value [ i0 ]);
+      }
+  }
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynAnyFactoryStub.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynAnyFactoryStub.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynAnyFactoryStub.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynAnyFactoryStub.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,119 @@
+/* _DynAnyFactoryStub.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import gnu.CORBA.Minor;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.DynamicAny.DynAnyFactoryPackage.InconsistentTypeCode;
+
+/**
+ * Should provide support for remote invocation of methods on
+ * DynAnyFactory. As DynAny can never be remote at least till 1.5 inclusive,
+ * this class is not in use. DynAnyFactory should be obtained from the
+ * {@link org.omg.CORBA.ORB#resolve_initial_references}.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class _DynAnyFactoryStub
+  extends ObjectImpl
+  implements DynAnyFactory, Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -6575269659020082310L;
+
+  /**
+   * The purpose and value of this field are not documented.
+   */
+  public static final Class _opsClass = DynAnyFactoryOperations.class;
+
+  /**
+   * Create the DynAnyFactory stub.
+   */
+  public _DynAnyFactoryStub()
+  {
+  }
+
+  /**
+   * Return the array of repository ids for this object.
+   */
+  public String[] _ids()
+  {
+    return new String[] { DynAnyFactoryHelper.id() };
+  }
+
+  /**
+   * The remote call of this DynAnyFactory method is not possible
+   * (the created DynAny would not be transferred to client).
+   *
+   * @throws MARSHAL, always.
+   */
+  public DynAny create_dyn_any(Any _0)
+                        throws InconsistentTypeCode
+  {
+    MARSHAL m = new MARSHAL(NOT_APPLICABLE);
+    m.minor = Minor.Inappropriate;
+    throw m;
+  }
+
+  /**
+   * The remote call of this DynAnyFactory method is not possible
+   * (the created DynAny would not be transferred to client).
+   *
+   * @throws MARSHAL, always.
+   */
+  public DynAny create_dyn_any_from_type_code(TypeCode _0)
+                                       throws InconsistentTypeCode
+  {
+    MARSHAL m = new MARSHAL(NOT_APPLICABLE);
+    m.minor = Minor.Inappropriate;
+    throw m;
+  }
+
+  static String NOT_APPLICABLE =
+    "DynAnyFactory is always local objects. " +
+    "It is never accessed on remote side via stub.";
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynAnyStub.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynAnyStub.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynAnyStub.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynAnyStub.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,627 @@
+/* _DynAnyStub.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+/**
+ * Should provide support for remote invocation of methods on DynAny. As
+ * DynAny can never be remote at least till 1.5 inclusive, this class is
+ * not in use.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class _DynAnyStub
+  extends ObjectImpl
+  implements DynAny, Serializable
+{
+  /**
+   * Use serialVersionUID (v1.4) for interoperability.
+   */
+  private static final long serialVersionUID = -6521892777941121597L;
+
+  /**
+   * The purpose and value of this field are not documented.
+   */
+  public static final Class _opsClass = DynAnyOperations.class;
+
+  /**
+   * Create the DynAny stub.
+   */
+  public _DynAnyStub()
+  {
+  }
+
+  /**
+   * Return the array of repository ids for this object.
+   */
+  public String[] _ids()
+  {
+    return new String[] { DynAnyHelper.id() };
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public TypeCode type()
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public boolean next()
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void destroy()
+  {
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public DynAny copy()
+  {
+    return this;
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void rewind()
+  {
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void assign(DynAny _0)
+              throws TypeMismatch
+  {
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public int component_count()
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public DynAny current_component()
+                           throws TypeMismatch
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public boolean equal(DynAny _0)
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void from_any(Any _0)
+                throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public Any get_any()
+              throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public boolean get_boolean()
+                      throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public char get_char()
+                throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public double get_double()
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public DynAny get_dyn_any()
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public float get_float()
+                  throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public int get_long()
+               throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public long get_longlong()
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public byte get_octet()
+                 throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public org.omg.CORBA.Object get_reference()
+                                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public short get_short()
+                  throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public String get_string()
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public TypeCode get_typecode()
+                        throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public int get_ulong()
+                throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public long get_ulonglong()
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public short get_ushort()
+                   throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public Serializable get_val()
+                       throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public char get_wchar()
+                 throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public String get_wstring()
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_any(Any _0)
+                  throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_boolean(boolean _0)
+                      throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_char(char _0)
+                   throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_double(double _0)
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_dyn_any(DynAny _0)
+                      throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_float(float _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_long(int _0)
+                   throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_longlong(long _0)
+                       throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_octet(byte _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_reference(org.omg.CORBA.Object _0)
+                        throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_short(short _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_string(String _0)
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_typecode(TypeCode _0)
+                       throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_ulong(int _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_ulonglong(long _0)
+                        throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_ushort(short _0)
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_val(Serializable _0)
+                  throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_wchar(char _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_wstring(String _0)
+                      throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public boolean seek(int _0)
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public Any to_any()
+  {
+    throw new MARSHAL(NOT_APPLICABLE);
+  }
+
+  static String NOT_APPLICABLE =
+    "DynAnys are always local objects. " +
+    "They and are never accessed on remote side via stubs.";
+}
\ No newline at end of file

Added: llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynArrayStub.java
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynArrayStub.java?rev=43913&view=auto

==============================================================================
--- llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynArrayStub.java (added)
+++ llvm-gcc-4.2/trunk/libjava/classpath/org/omg/DynamicAny/_DynArrayStub.java Thu Nov  8 16:56:19 2007
@@ -0,0 +1,666 @@
+/* _DynArrayStub.java --
+   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath 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 for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package org.omg.DynamicAny;
+
+import java.io.Serializable;
+
+import org.omg.CORBA.Any;
+import org.omg.CORBA.MARSHAL;
+import org.omg.CORBA.TypeCode;
+import org.omg.CORBA.portable.ObjectImpl;
+import org.omg.DynamicAny.DynAnyPackage.InvalidValue;
+import org.omg.DynamicAny.DynAnyPackage.TypeMismatch;
+
+/**
+ * Should provide support for remote invocation of methods on DynArray. As
+ * DynArray can never be remote at least till 1.5 inclusive, this class is
+ * not in use.
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA at Bioinformatics.org)
+ */
+public class _DynArrayStub
+  extends ObjectImpl
+  implements DynArray, Serializable
+{
+  /**
+   * Use serialVersionUID for interoperability.
+   */
+  private static final long serialVersionUID = -6302474930370950228L;
+
+  /**
+   * The purpose and value of this field are not documented.
+   */
+  public static final Class _opsClass = DynArrayOperations.class;
+
+  /**
+   * Create the DynArray stub.
+   */
+  public _DynArrayStub()
+  {
+  }
+
+  /**
+   * Return the array of repository ids for this object.
+   */
+  public String[] _ids()
+  {
+    return new String[] { DynArrayHelper.id() };
+  }
+
+  /**
+   * The remote call of DynArray methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public Any[] get_elements()
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynArray methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public DynAny[] get_elements_as_dyn_any()
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynArray methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void set_elements(Any[] _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynArray methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void set_elements_as_dyn_any(DynAny[] _0)
+                               throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+ 
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public TypeCode type()
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public boolean next()
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void destroy()
+  {
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public DynAny copy()
+  {
+    return this;
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void rewind()
+  {
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void assign(DynAny _0)
+              throws TypeMismatch
+  {
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public int component_count()
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public DynAny current_component()
+                           throws TypeMismatch
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public boolean equal(DynAny _0)
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void from_any(Any _0)
+                throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public Any get_any()
+              throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public boolean get_boolean()
+                      throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public char get_char()
+                throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public double get_double()
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public DynAny get_dyn_any()
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public float get_float()
+                  throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public int get_long()
+               throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public long get_longlong()
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public byte get_octet()
+                 throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public org.omg.CORBA.Object get_reference()
+                                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public short get_short()
+                  throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public String get_string()
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public TypeCode get_typecode()
+                        throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public int get_ulong()
+                throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public long get_ulonglong()
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public short get_ushort()
+                   throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public Serializable get_val()
+                       throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public char get_wchar()
+                 throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public String get_wstring()
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_any(Any _0)
+                  throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_boolean(boolean _0)
+                      throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_char(char _0)
+                   throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_double(double _0)
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_dyn_any(DynAny _0)
+                      throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_float(float _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_long(int _0)
+                   throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_longlong(long _0)
+                       throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_octet(byte _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_reference(org.omg.CORBA.Object _0)
+                        throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_short(short _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_string(String _0)
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_typecode(TypeCode _0)
+                       throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_ulong(int _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_ulonglong(long _0)
+                        throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_ushort(short _0)
+                     throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_val(Serializable _0)
+                  throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_wchar(char _0)
+                    throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public void insert_wstring(String _0)
+                      throws TypeMismatch, InvalidValue
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public boolean seek(int _0)
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+  /**
+   * The remote call of DynAny methods is not possible.
+   *
+   * @throws MARSHAL, always.
+   */
+  public Any to_any()
+  {
+    throw new MARSHAL(_DynAnyStub.NOT_APPLICABLE);
+  }
+
+}
\ No newline at end of file





More information about the llvm-commits mailing list