From 554fd8c5195424bdbcabf5de30fdc183aba391bd Mon Sep 17 00:00:00 2001
From: upstream source tree
Date: Sun, 15 Mar 2015 20:14:05 -0400
Subject: obtained gcc-4.6.4.tar.bz2 from upstream website; verified
gcc-4.6.4.tar.bz2.sig; imported gcc-4.6.4 source tree from verified upstream
tarball.
downloading a git-generated archive based on the 'upstream' tag
should provide you with a source tree that is binary identical
to the one extracted from the above tarball.
if you have obtained the source via the command 'git clone',
however, do note that line-endings of files in your working
directory might differ from line-endings of the respective
files in the upstream repository.
---
.../omg/PortableInterceptor/ORBInitializer.java | 132 +++++++++++++++++++++
1 file changed, 132 insertions(+)
create mode 100644 libjava/classpath/org/omg/PortableInterceptor/ORBInitializer.java
(limited to 'libjava/classpath/org/omg/PortableInterceptor/ORBInitializer.java')
diff --git a/libjava/classpath/org/omg/PortableInterceptor/ORBInitializer.java b/libjava/classpath/org/omg/PortableInterceptor/ORBInitializer.java
new file mode 100644
index 000000000..84ddfd9fe
--- /dev/null
+++ b/libjava/classpath/org/omg/PortableInterceptor/ORBInitializer.java
@@ -0,0 +1,132 @@
+/* ORBInitializer.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.PortableInterceptor;
+
+import org.omg.CORBA.Object;
+import org.omg.CORBA.portable.IDLEntity;
+
+/**
+ *
+ * Registers the interceptor.
+ *
+ * Direct interceptor registration would open a security hole. Hence instead the
+ * interceptors from the ORB.init(..) method, passing the names of the needed
+ * initialized classes via properties.
+ *
+ *
+ * These property names are of the form
+ *
+ * org.omg.PortableInterceptor.ORBInitializerClass.<Service>
+ * where <Service> is the string name of a class, which implements
+ * {@link ORBInitializer}. During ORB.init(..)
, the properties
+ * begining with org.omg.PortableInterceptor.ORBInitializerClass are
+ * collected, the <Service> portion of each property is extracted,
+ * the initialiser is instantiated with the <Service> string as its
+ * class name and then pre_init
and post_init
+ * (defined in {@link ORBInitializerOperations}) are called on that initializer.
+ * The runtime exceptions, thrown by these two methods, are ignored.
+ *
+ *
+ *
Example
+ * A client-side logging service may have the following ORBInitializer
+ * implementation:
+ *
+ *
+ * package gnu.x.logging;
+ *
+ * import org.omg.PortableInterceptor.*;
+ * import org.omg.CORBA.LocalObject;
+ *
+ * public class LoggingService extends LocalObject implements ORBInitializer
+ * {
+ * public void pre_init (ORBInitInfo info)
+ * {
+ * // More than one interceptor can be registered.
+ * ServerRequestInterceptor log_requests = new rLoggingInterceptor();
+ * info.add_server_request_interceptor(log_requests);
+ *
+ * IORInterceptor log_iors = new iLoggingInterceptor();
+ * info.add_ior_interceptor(log_iors);
+ * }
+ *
+ * public void post_init (ORBInitInfo info)
+ * {
+ * // Unused.
+ * }
+ * }
+ *
+ *
+ * Then, one of the used set of properties then must contain the property, named
+ *
+ * org.omg.PortableInterceptor.ORBInitializerClass.gnu.x.Logging.LoggingService
+ * .
+ * The value of the property is ignored and may empty string. The
+ * agreed locations, where this property will be searched for, are:
+ *
+ * 1. The properties parameter in the ORB.init(..), if any.
+ * 2. The System properties.
+ * 3. The orb.properties file located in the user.home directory (if any).
+ * 4. The orb.properties file located in the java.home/lib directory (if any).
+ *
+ *
+ * The applet parameters and command line arguments are not scanned
+ * for the possible initializers.
+ *
+ *
+ * Interceptors are registered on a per-ORB basis. The virtual per-object
+ * Interceptors can be simulated by checking the policies on the target from
+ * within the interception points to determine whether they should work. The
+ * virtual per-POA Interceptors can be obtained instantiating each POA such with
+ * a different ORB.
+ *
+ *
+ * The registration code should not call directly any methods on the ORB being
+ * registered.
+ *
+ *
+ * The new interceptors cannot be registered after the ORB.init(..) returns.
+ *
+ *
+ * @author Audrius Meskauskas, Lithuania (AudriusA@Bioinformatics.org)
+ */
+public interface ORBInitializer extends ORBInitializerOperations,
+ Object,
+ IDLEntity
+{
+}
--
cgit v1.2.3