You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by js...@apache.org on 2005/12/11 22:06:19 UTC
svn commit: r356022 [17/22] - in /geronimo/branches/1.0: ./ applications/
applications/daytrader/ applications/daytrader/bin/
applications/daytrader/core/ applications/daytrader/derby/
applications/daytrader/ear/ applications/daytrader/ear/src/applicat...
Modified: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/adapter/RemoteAdapter.txt
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/adapter/RemoteAdapter.txt?rev=356022&r1=356021&r2=356022&view=diff
==============================================================================
--- geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/adapter/RemoteAdapter.txt (original)
+++ geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/adapter/RemoteAdapter.txt Sun Dec 11 12:58:34 2005
@@ -1,87 +1,87 @@
-/**
- *
- * Copyright 2004-2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.geronimo.interop.adapter;
-
-import org.apache.geronimo.interop.rmi.iiop.ObjectInputStream;
-import org.apache.geronimo.interop.rmi.iiop.ObjectOutputStream;
-import org.apache.geronimo.interop.rmi.iiop.ObjectRef;
-//import org.openejb.EJBContainer;
-//import org.openejb.client.ProxyFactory;
-//import org.openejb.proxy.ProxyInfo;
-//import org.openejb.proxy.EJBProxyFactory;
-
-import java.util.HashMap;
-import java.util.Vector;
-
-public class RemoteAdapter extends Adapter
-{
- private EJBContainer ejbContainer;
- private ProxyInfo proxyInfo;
- private EJBProxyFactory proxyFactory;
-
- public RemoteAdapter( EJBContainer container ) {
- this.ejbContainer = container;
- proxyInfo = ejbContainer.getProxyInfo();
- //proxyFactory = ejbContainer.getProxyFactory();
- }
-
- public Object getAdapterID()
- {
- return null; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public String[] getBindNames()
- {
- return new String[0]; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void start()
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void stop()
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public ObjectRef getObjectRef()
- {
- return null; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public Object getServant() {
- // Stateless
- return ejbContainer.getEJBObject( null );
- }
-
- public EJBContainer getEJBContainer()
- {
- return null; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public Object getEJBHome()
- {
- return null; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void invoke(String methodName, byte[] objectKey, ObjectInputStream input, ObjectOutputStream output)
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-}
+/**
+ *
+ * Copyright 2004-2005 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geronimo.interop.adapter;
+
+import org.apache.geronimo.interop.rmi.iiop.ObjectInputStream;
+import org.apache.geronimo.interop.rmi.iiop.ObjectOutputStream;
+import org.apache.geronimo.interop.rmi.iiop.ObjectRef;
+//import org.openejb.EJBContainer;
+//import org.openejb.client.ProxyFactory;
+//import org.openejb.proxy.ProxyInfo;
+//import org.openejb.proxy.EJBProxyFactory;
+
+import java.util.HashMap;
+import java.util.Vector;
+
+public class RemoteAdapter extends Adapter
+{
+ private EJBContainer ejbContainer;
+ private ProxyInfo proxyInfo;
+ private EJBProxyFactory proxyFactory;
+
+ public RemoteAdapter( EJBContainer container ) {
+ this.ejbContainer = container;
+ proxyInfo = ejbContainer.getProxyInfo();
+ //proxyFactory = ejbContainer.getProxyFactory();
+ }
+
+ public Object getAdapterID()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String[] getBindNames()
+ {
+ return new String[0]; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void start()
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void stop()
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public ObjectRef getObjectRef()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Object getServant() {
+ // Stateless
+ return ejbContainer.getEJBObject( null );
+ }
+
+ public EJBContainer getEJBContainer()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Object getEJBHome()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void invoke(String methodName, byte[] objectKey, ObjectInputStream input, ObjectOutputStream output)
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+}
Propchange: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/adapter/RemoteAdapter.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/adapter/RemoteAdapter.txt
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/adapter/RemoteAdapter.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/generator/readme.txt
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/generator/readme.txt?rev=356022&r1=356021&r2=356022&view=diff
==============================================================================
--- geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/generator/readme.txt (original)
+++ geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/generator/readme.txt Sun Dec 11 12:58:34 2005
@@ -1,9 +1,9 @@
-The generator directory is a basic code generator that will be able to generate java source code or byte
-code from the same input (instructions). The idea behind this was that code could be generated via
-statements which could then be written as java source or byte code.
-
-Todo:
-
- - create two subpackages:
- - java - Impl of the code writer for .java
+The generator directory is a basic code generator that will be able to generate java source code or byte
+code from the same input (instructions). The idea behind this was that code could be generated via
+statements which could then be written as java source or byte code.
+
+Todo:
+
+ - create two subpackages:
+ - java - Impl of the code writer for .java
- class - Impl of the code writer for .class
Propchange: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/generator/readme.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/generator/readme.txt
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/generator/readme.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/rmi/iiop/compiler/StubCompiler.txt
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/rmi/iiop/compiler/StubCompiler.txt?rev=356022&r1=356021&r2=356022&view=diff
==============================================================================
--- geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/rmi/iiop/compiler/StubCompiler.txt (original)
+++ geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/rmi/iiop/compiler/StubCompiler.txt Sun Dec 11 12:58:34 2005
@@ -1,571 +1,571 @@
-/**
- *
- * Copyright 2004-2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.geronimo.interop.rmi.iiop.client;
-
-import org.apache.geronimo.interop.*;
-import org.apache.geronimo.interop.attributes.*;
-import org.apache.geronimo.interop.compiler.*;
-import org.apache.geronimo.interop.properties.*;
-import org.apache.geronimo.interop.rmi.*;
-import org.apache.geronimo.interop.rmi.iiop.*;
-import org.apache.geronimo.interop.util.*;
-import java.lang.reflect.*;
-import java.io .*;
-import java.util.*;
-
-public class StubCompiler
-{
- //public static final Component component = new Component(StubCompiler.class);
-
- public static StubCompiler getInstance(Class remoteInterface)
- {
- //StubCompiler sc = (StubCompiler)component.getInstance();
- StubCompiler sc = new StubCompiler();
- sc.init(remoteInterface);
- return sc;
- }
-
- // private data
-
- private Class _remoteInterface;
-
- private static HashMap _readMethods;
- private static HashMap _writeMethods;
- private static HashMap _overloadTypes;
-
- static
- {
- _readMethods = new HashMap();
- _readMethods.put("boolean", "readBoolean");
- _readMethods.put("char", "readChar");
- _readMethods.put("byte", "readByte");
- _readMethods.put("short", "readShort");
- _readMethods.put("int", "readInt");
- _readMethods.put("long", "readLong");
- _readMethods.put("float", "readFloat");
- _readMethods.put("double", "readDouble");
-
- _writeMethods = new HashMap();
- _writeMethods.put("boolean", "writeBoolean");
- _writeMethods.put("char", "writeChar");
- _writeMethods.put("byte", "writeByte");
- _writeMethods.put("short", "writeShort");
- _writeMethods.put("int", "writeInt");
- _writeMethods.put("long", "writeLong");
- _writeMethods.put("float", "writeFloat");
- _writeMethods.put("double", "writeDouble");
-
- _overloadTypes = new HashMap();
- _overloadTypes.put("boolean", "boolean");
- _overloadTypes.put("byte", "octet");
- _overloadTypes.put("char", "wchar");
- _overloadTypes.put("double", "double");
- _overloadTypes.put("float", "float");
- _overloadTypes.put("int", "long");
- _overloadTypes.put("long", "long_long");
- _overloadTypes.put("short", "short");
- _overloadTypes.put("java.lang.Class", "javax_rmi_CORBA.ClassDesc");
- _overloadTypes.put("java.lang.String", "CORBA.WStringValue");
- _overloadTypes.put("org.omg.CORBA.Object", "Object");
- _overloadTypes.put("org.omg.CORBA.Any", "org_omg_boxedIDL_CORBA.Any");
- _overloadTypes.put("org.omg.CORBA.TypeCode", "org_omg_boxedIDL_CORBA.TypeCode");
- }
-
- // public methods
-
- protected void init( Class remoteInterface )
- {
- _remoteInterface = remoteInterface;
- }
-
- public static void main(String[] args)
- {
- for (int i = 0; i < args.length; i++)
- {
- String className = args[i];
- Class remoteInterface = ThreadContext.loadClass(className);
- StubCompiler sc = new StubCompiler();
- sc.init( remoteInterface );
- sc.getStubClass();
- }
- }
-
- public Class getStubClass()
- {
- ClassWriter cw = getStubClassWriter();
- return cw.compile(_remoteInterface);
- }
-
- public String getStubClassName()
- {
- String className = _remoteInterface.getName();
- return JavaClass.addPackageSuffix(className, "iiop_stubs");
- }
-
- public ClassWriter getStubClassWriter()
- {
- String stubClassName = getStubClassName();
- boolean isCorbaStub = ! java.rmi.Remote.class.isAssignableFrom(_remoteInterface);
- String simple = isCorbaStub ? "Simple" : "";
-
- ClassWriter cw = new ClassWriter(stubClassName);
- cw.setAbstract();
- cw.setSuperclass(ObjectRef.class);
- cw.addImplements(_remoteInterface);
- cw.beginClass();
-
- StaticField attributesField = cw.newStaticField(Attribute[].class, "$attributes", "{}");
- attributesField.setPublic();
- attributesField.setFinal();
-
- StaticField componentField = cw.newStaticField(Component.class, "$component",
- cw.newObject("org.apache.geronimo.interop.Component", stubClassName + ".class"));
- componentField.setPublic();
- componentField.setFinal();
-
- MethodWriter mw = cw.newMethod(stubClassName, "$getInstance");
- mw.setStatic();
- mw.beginMethod();
- mw.returnValue(mw.cast(stubClassName, mw.invoke("$component.getInstance")));
- mw.endMethod();
-
- mw = cw.newMethod(String.class, "$getID");
- mw.beginMethod();
- String id = "RMI:" + _remoteInterface.getName() + ":0000000000000000";
- // TODO: IDL type ids???
- mw.returnValue(mw.string(id));
- mw.endMethod();
-
- HashMap vtMap = new HashMap();
-
- Method[] methods = getRemoteMethods();
- for (int i = 0; i < methods.length; i++)
- {
- Method method = methods[i];
- String remoteMethodName = getOperation(method); // TODO: RMI-IIOP name
- mw = cw.newMethod(method);
- ParameterList parameters = mw.getParameterList();
- ExceptionList exceptions = mw.getExceptionList();
- String returnType = mw.getReturnType();
- mw.beginMethod();
- LocalVariable request = mw.newLocalVariable(Connection.class, "connection",
- mw.invoke("this.$connect"));
- if (parameters.size() != 0)
- {
- LocalVariable output = mw.newLocalVariable(org.apache.geronimo.interop.rmi.iiop.ObjectOutputStream.class,
- "output", mw.invoke(request + ".get" + simple + "OutputStream"));
- Class[] parameterTypes = method.getParameterTypes();
- int pi = 0;
- for (Iterator j = parameters.iterator(); j.hasNext(); pi++)
- {
- MethodParameter mp = (MethodParameter)j.next();
- String name = mp.name;
- String type = mp.type;
- if (isHolder(parameterTypes[pi]))
- {
- name = name + ".value";
- type = getHolderValueType(parameterTypes[pi]);
- }
- String writeMethod = getWriteMethod(type);
- if (writeMethod.equals("writeObject"))
- {
- Integer vtIndex = getValueTypeIndex(cw, vtMap, type);
- mw.call(output + "." + writeMethod, "type$" + vtIndex, name);
- }
- else
- {
- mw.call(output + "." + writeMethod, name);
- }
- }
- }
- mw.call(request + ".invoke", "this", mw.string(remoteMethodName));
- LocalVariable input = mw.newLocalVariable(org.apache.geronimo.interop.rmi.iiop.ObjectInputStream.class,
- "input", mw.invoke(request + ".get" + simple + "InputStream"));
- mw.call(request + ".close");
- LocalVariable et = mw.newLocalVariable(String.class, "et",
- mw.invoke(request + ".getExceptionType"));
- mw.beginIf(et + " != null");
- for (Iterator j = exceptions.iterator(); j.hasNext();)
- {
- String exception = (String)j.next();
- // TODO: generate correct repository ids for user exceptions
- mw.beginIf(mw.invoke(et + ".equals", mw.string(exception)));
- Integer vtIndex = getValueTypeIndex(cw, vtMap, exception);
- mw.throwCheckedException(mw.cast(exception, mw.invoke(input + ".readException", "type$" + vtIndex)));
- mw.endIf();
- }
- if (isCorbaStub
- || method.getName().equals("_is_a"))
- {
- mw.throwRuntimeException(mw.invoke("org.apache.geronimo.interop.rmi.iiop.SystemExceptionFactory.getException",
- mw.invoke(request + ".getException")));
- }
- else
- {
- mw.throwCheckedException(mw.invoke("org.apache.geronimo.interop.rmi.iiop.RemoteExceptionFactory.getException",
- mw.invoke(request + ".getException")));
- }
- mw.endIf();
- if (method.getReturnType() != void.class)
- {
- String readMethod = getReadMethod(returnType);
- mw.newResult();
- if (readMethod.equals("readObject"))
- {
- Integer vtIndex = getValueTypeIndex(cw, vtMap, returnType);
- mw.setResult(mw.cast(returnType, mw.invoke(input + "." + readMethod, "type$" + vtIndex)));
- }
- else
- {
- mw.setResult(mw.invoke(input + "." + readMethod));
- }
- mw.returnResult();
- }
- mw.endMethod();
- }
- cw.endClass();
- return cw;
- }
-
- public String getHolderValueType(Class c)
- {
- try
- {
- Field f = c.getField("value");
- return JavaType.getName(f.getType());
- }
- catch (Exception ex)
- {
- throw new SystemException(c.getName() + ".value", ex);
- }
- }
-
- public Method[] getRemoteMethods()
- {
- Method[] methods = _remoteInterface.getMethods();
- TreeMap map = new TreeMap();
- int n = methods.length;
- for (int i = 0; i < n; i++)
- {
- Method method = methods[i];
- String methodSig = JavaMethod.getShortSignature(method);
- if (map.get(methodSig) != null)
- {
- continue;
- }
- String methodName = method.getName();
- if (methodName.startsWith("_"))
- {
- if (! methodName.equals("_is_a"))
- {
- continue;
- }
- }
- map.put(methodSig, method);
- }
- n = map.size();
- methods = new Method[n];
- Iterator v = map.values().iterator();
- for (int i = 0; i < n; i++)
- {
- Method method = (Method)v.next();
- methods[i] = method;
- }
- return methods;
- }
-
- /**
- ** Return the RMI-IIOP operation name for a remote method.
- **/
- public String getOperation(Method method)
- {
- if (! isOverloaded(method))
- {
- if (isGetAttribute(method) || isSetAttribute(method))
- {
- String prefix = method.getName().startsWith("set") ? "set" : "get";
- String attribute = getAttributeName(method);
- return "_" + prefix + "_" + attribute;
- }
- return method.getName();
- }
- Class[] types = method.getParameterTypes();
- String suffix = "";
- if (types.length == 0)
- {
- suffix = "__";
- }
- else
- {
- for (int i = 0; i < types.length; i++)
- {
- Class type = types[i];
- suffix += "__" + overload(type, 0);
- }
- }
- return method.getName() + suffix;
- }
-
- public String getReadMethod(String type)
- {
- String m = (String)_readMethods.get(type);
- if (m == null)
- {
- m = "readObject";
- }
- return m;
- }
-
- public String getWriteMethod(String type)
- {
- String m = (String)_writeMethods.get(type);
- if (m == null)
- {
- m = "writeObject";
- }
- return m;
- }
-
- public Integer getValueTypeIndex(ClassWriter cw, HashMap vtMap, String type)
- {
- Integer vtIndex = (Integer)vtMap.get(type);
- if (vtIndex == null)
- {
- vtIndex = new Integer(vtMap.size() + 1);
- vtMap.put(type, vtIndex);
- StaticField vt = cw.newStaticField(ValueType.class, "type$" + vtIndex,
- cw.invoke("org.apache.geronimo.interop.rmi.iiop.ValueType.getInstance",
- type + ".class"));
- vt.setPrivate();
- vt.setFinal();
- }
- return vtIndex;
- }
-
- public boolean isHolder(Class c)
- {
- if (c.getName().endsWith("Holder"))
- {
- if (org.omg.CORBA.portable.Streamable.class.isAssignableFrom(c))
- {
- return true;
- }
- }
- return false;
- }
-
- //public boolean isOutParameter(Method method, int parameter)
- public boolean isOutParameter(Component comp, Method method, int parameter)
- {
- AttributeList attributes = comp.getAttributes();
- for (Iterator i = attributes.iterator(); i.hasNext();)
- {
- Attribute a = (Attribute)i.next();
- /*
- * How does an EJB have an out parameter?
-
- if (a instanceof IdlOutAttribute)
- {
- IdlOutAttribute ioa = (IdlOutAttribute)a;
- if (ioa.matches(method) && ioa.getParameterIndex() == parameter)
- {
- return true;
- }
- }
- */
- }
-
- return false;
- }
-
- public boolean isOverloaded(Method method)
- {
- String name = method.getName();
- String sig1 = null;
- Method[] methods = _remoteInterface.getMethods();
- for (int i = 0; i < methods.length; i++)
- {
- Method otherMethod = methods[i];
- if (otherMethod.getName().equals(name))
- {
- if (sig1 == null)
- {
- sig1 = JavaMethod.getShortSignature(method);
- }
- String sig2 = JavaMethod.getShortSignature(otherMethod);
- if (! sig1.equals(sig2))
- {
- return true;
- }
- }
- }
- return false;
- }
-
- // protected methods
-
- protected String getAttributeName(Method method)
- {
- String name = method.getName();
- if (name.startsWith("get") || name.startsWith("set"))
- {
- return StringUtil.getLowerFirstIfFirst2NotUpper(name.substring(3));
- }
- else if (name.startsWith("is"))
- {
- return StringUtil.getLowerFirstIfFirst2NotUpper(name.substring(2));
- }
- else
- {
- throw new IllegalArgumentException("method = " + method);
- }
- }
-
- private boolean isGetAttribute(Method method)
- {
- String name = method.getName();
- if (name.startsWith("get"))
- {
- if (name.length() < 4)
- {
- return false;
- }
- }
- else if (name.startsWith("is"))
- {
- if (name.length() < 3)
- {
- return false;
- }
- }
- else
- {
- return false;
- }
- return method.getExceptionTypes().length == 0
- && method.getParameterTypes().length == 0
- && method.getReturnType() != null;
- }
-
- protected boolean isSetAttribute(Method method)
- {
- String name = method.getName();
- if (name.startsWith("set"))
- {
- if (name.length() < 4)
- {
- return false;
- }
- }
- String attribute = name.substring(3);
- Method getMethod;
- try
- {
- String getAttribute = "get" + attribute;
- getMethod = _remoteInterface.getMethod(getAttribute, new Class[0]);
- }
- catch (Exception noGetAttribute)
- {
- try
- {
- String isAttribute = "is" + attribute;
- getMethod = _remoteInterface.getMethod(isAttribute, new Class[0]);
- }
- catch (Exception noIsAttribute)
- {
- return false;
- }
- }
- if (getMethod.getExceptionTypes().length != 0)
- {
- return false;
- }
- Class getReturnType = getMethod.getReturnType();
- if (getReturnType == null)
- {
- return false;
- }
- if (method.getExceptionTypes().length != 0)
- {
- return false;
- }
- Class[] setParameters = method.getParameterTypes();
- if (setParameters.length != 1)
- {
- return false;
- }
- Class setParameterType = setParameters[0];
- return setParameterType == getReturnType;
- }
-
- /**
- ** Get mangled parameter type for RMI-IIOP overloading.
- **/
- protected String overload(Class type)
- {
- return overload(type, 0);
- }
-
- /**
- ** Get mangled parameter type for RMI-IIOP overloading.
- **/
- protected String overload(Class type, int dim)
- {
- String typeName = JavaType.getName(type);
- String overload = (String)_overloadTypes.get(typeName);
- boolean wasInOverloadTypes = false;
- if (overload != null)
- {
- typeName = overload;
- overload = null;
- wasInOverloadTypes = true;
- }
- if (type.isArray())
- {
- dim = 1;
- Class element = type.getComponentType();
- while (element.isArray())
- {
- dim++;
- element = element.getComponentType();
- }
- return "org_omg_boxedRMI_" + overload(element, dim);
- }
- else
- {
- if (dim != 0)
- {
- int pos = typeName.lastIndexOf(".");
- if (pos != -1)
- {
- typeName = typeName.substring(0, pos) + "_seq" + dim
- + "_" + typeName.substring(pos + 1);
- }
- }
- if (overload == null && ! wasInOverloadTypes)
- {
- if (org.omg.CORBA.portable.IDLEntity.class.isAssignableFrom(type))
- {
- // TODO: don't do this for valuetype as IDL entity?
- typeName = "org_omg_boxedIDL_" + typeName;
- }
- }
- return typeName.replace('.', '_');
- }
- }
-}
+/**
+ *
+ * Copyright 2004-2005 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geronimo.interop.rmi.iiop.client;
+
+import org.apache.geronimo.interop.*;
+import org.apache.geronimo.interop.attributes.*;
+import org.apache.geronimo.interop.compiler.*;
+import org.apache.geronimo.interop.properties.*;
+import org.apache.geronimo.interop.rmi.*;
+import org.apache.geronimo.interop.rmi.iiop.*;
+import org.apache.geronimo.interop.util.*;
+import java.lang.reflect.*;
+import java.io .*;
+import java.util.*;
+
+public class StubCompiler
+{
+ //public static final Component component = new Component(StubCompiler.class);
+
+ public static StubCompiler getInstance(Class remoteInterface)
+ {
+ //StubCompiler sc = (StubCompiler)component.getInstance();
+ StubCompiler sc = new StubCompiler();
+ sc.init(remoteInterface);
+ return sc;
+ }
+
+ // private data
+
+ private Class _remoteInterface;
+
+ private static HashMap _readMethods;
+ private static HashMap _writeMethods;
+ private static HashMap _overloadTypes;
+
+ static
+ {
+ _readMethods = new HashMap();
+ _readMethods.put("boolean", "readBoolean");
+ _readMethods.put("char", "readChar");
+ _readMethods.put("byte", "readByte");
+ _readMethods.put("short", "readShort");
+ _readMethods.put("int", "readInt");
+ _readMethods.put("long", "readLong");
+ _readMethods.put("float", "readFloat");
+ _readMethods.put("double", "readDouble");
+
+ _writeMethods = new HashMap();
+ _writeMethods.put("boolean", "writeBoolean");
+ _writeMethods.put("char", "writeChar");
+ _writeMethods.put("byte", "writeByte");
+ _writeMethods.put("short", "writeShort");
+ _writeMethods.put("int", "writeInt");
+ _writeMethods.put("long", "writeLong");
+ _writeMethods.put("float", "writeFloat");
+ _writeMethods.put("double", "writeDouble");
+
+ _overloadTypes = new HashMap();
+ _overloadTypes.put("boolean", "boolean");
+ _overloadTypes.put("byte", "octet");
+ _overloadTypes.put("char", "wchar");
+ _overloadTypes.put("double", "double");
+ _overloadTypes.put("float", "float");
+ _overloadTypes.put("int", "long");
+ _overloadTypes.put("long", "long_long");
+ _overloadTypes.put("short", "short");
+ _overloadTypes.put("java.lang.Class", "javax_rmi_CORBA.ClassDesc");
+ _overloadTypes.put("java.lang.String", "CORBA.WStringValue");
+ _overloadTypes.put("org.omg.CORBA.Object", "Object");
+ _overloadTypes.put("org.omg.CORBA.Any", "org_omg_boxedIDL_CORBA.Any");
+ _overloadTypes.put("org.omg.CORBA.TypeCode", "org_omg_boxedIDL_CORBA.TypeCode");
+ }
+
+ // public methods
+
+ protected void init( Class remoteInterface )
+ {
+ _remoteInterface = remoteInterface;
+ }
+
+ public static void main(String[] args)
+ {
+ for (int i = 0; i < args.length; i++)
+ {
+ String className = args[i];
+ Class remoteInterface = ThreadContext.loadClass(className);
+ StubCompiler sc = new StubCompiler();
+ sc.init( remoteInterface );
+ sc.getStubClass();
+ }
+ }
+
+ public Class getStubClass()
+ {
+ ClassWriter cw = getStubClassWriter();
+ return cw.compile(_remoteInterface);
+ }
+
+ public String getStubClassName()
+ {
+ String className = _remoteInterface.getName();
+ return JavaClass.addPackageSuffix(className, "iiop_stubs");
+ }
+
+ public ClassWriter getStubClassWriter()
+ {
+ String stubClassName = getStubClassName();
+ boolean isCorbaStub = ! java.rmi.Remote.class.isAssignableFrom(_remoteInterface);
+ String simple = isCorbaStub ? "Simple" : "";
+
+ ClassWriter cw = new ClassWriter(stubClassName);
+ cw.setAbstract();
+ cw.setSuperclass(ObjectRef.class);
+ cw.addImplements(_remoteInterface);
+ cw.beginClass();
+
+ StaticField attributesField = cw.newStaticField(Attribute[].class, "$attributes", "{}");
+ attributesField.setPublic();
+ attributesField.setFinal();
+
+ StaticField componentField = cw.newStaticField(Component.class, "$component",
+ cw.newObject("org.apache.geronimo.interop.Component", stubClassName + ".class"));
+ componentField.setPublic();
+ componentField.setFinal();
+
+ MethodWriter mw = cw.newMethod(stubClassName, "$getInstance");
+ mw.setStatic();
+ mw.beginMethod();
+ mw.returnValue(mw.cast(stubClassName, mw.invoke("$component.getInstance")));
+ mw.endMethod();
+
+ mw = cw.newMethod(String.class, "$getID");
+ mw.beginMethod();
+ String id = "RMI:" + _remoteInterface.getName() + ":0000000000000000";
+ // TODO: IDL type ids???
+ mw.returnValue(mw.string(id));
+ mw.endMethod();
+
+ HashMap vtMap = new HashMap();
+
+ Method[] methods = getRemoteMethods();
+ for (int i = 0; i < methods.length; i++)
+ {
+ Method method = methods[i];
+ String remoteMethodName = getOperation(method); // TODO: RMI-IIOP name
+ mw = cw.newMethod(method);
+ ParameterList parameters = mw.getParameterList();
+ ExceptionList exceptions = mw.getExceptionList();
+ String returnType = mw.getReturnType();
+ mw.beginMethod();
+ LocalVariable request = mw.newLocalVariable(Connection.class, "connection",
+ mw.invoke("this.$connect"));
+ if (parameters.size() != 0)
+ {
+ LocalVariable output = mw.newLocalVariable(org.apache.geronimo.interop.rmi.iiop.ObjectOutputStream.class,
+ "output", mw.invoke(request + ".get" + simple + "OutputStream"));
+ Class[] parameterTypes = method.getParameterTypes();
+ int pi = 0;
+ for (Iterator j = parameters.iterator(); j.hasNext(); pi++)
+ {
+ MethodParameter mp = (MethodParameter)j.next();
+ String name = mp.name;
+ String type = mp.type;
+ if (isHolder(parameterTypes[pi]))
+ {
+ name = name + ".value";
+ type = getHolderValueType(parameterTypes[pi]);
+ }
+ String writeMethod = getWriteMethod(type);
+ if (writeMethod.equals("writeObject"))
+ {
+ Integer vtIndex = getValueTypeIndex(cw, vtMap, type);
+ mw.call(output + "." + writeMethod, "type$" + vtIndex, name);
+ }
+ else
+ {
+ mw.call(output + "." + writeMethod, name);
+ }
+ }
+ }
+ mw.call(request + ".invoke", "this", mw.string(remoteMethodName));
+ LocalVariable input = mw.newLocalVariable(org.apache.geronimo.interop.rmi.iiop.ObjectInputStream.class,
+ "input", mw.invoke(request + ".get" + simple + "InputStream"));
+ mw.call(request + ".close");
+ LocalVariable et = mw.newLocalVariable(String.class, "et",
+ mw.invoke(request + ".getExceptionType"));
+ mw.beginIf(et + " != null");
+ for (Iterator j = exceptions.iterator(); j.hasNext();)
+ {
+ String exception = (String)j.next();
+ // TODO: generate correct repository ids for user exceptions
+ mw.beginIf(mw.invoke(et + ".equals", mw.string(exception)));
+ Integer vtIndex = getValueTypeIndex(cw, vtMap, exception);
+ mw.throwCheckedException(mw.cast(exception, mw.invoke(input + ".readException", "type$" + vtIndex)));
+ mw.endIf();
+ }
+ if (isCorbaStub
+ || method.getName().equals("_is_a"))
+ {
+ mw.throwRuntimeException(mw.invoke("org.apache.geronimo.interop.rmi.iiop.SystemExceptionFactory.getException",
+ mw.invoke(request + ".getException")));
+ }
+ else
+ {
+ mw.throwCheckedException(mw.invoke("org.apache.geronimo.interop.rmi.iiop.RemoteExceptionFactory.getException",
+ mw.invoke(request + ".getException")));
+ }
+ mw.endIf();
+ if (method.getReturnType() != void.class)
+ {
+ String readMethod = getReadMethod(returnType);
+ mw.newResult();
+ if (readMethod.equals("readObject"))
+ {
+ Integer vtIndex = getValueTypeIndex(cw, vtMap, returnType);
+ mw.setResult(mw.cast(returnType, mw.invoke(input + "." + readMethod, "type$" + vtIndex)));
+ }
+ else
+ {
+ mw.setResult(mw.invoke(input + "." + readMethod));
+ }
+ mw.returnResult();
+ }
+ mw.endMethod();
+ }
+ cw.endClass();
+ return cw;
+ }
+
+ public String getHolderValueType(Class c)
+ {
+ try
+ {
+ Field f = c.getField("value");
+ return JavaType.getName(f.getType());
+ }
+ catch (Exception ex)
+ {
+ throw new SystemException(c.getName() + ".value", ex);
+ }
+ }
+
+ public Method[] getRemoteMethods()
+ {
+ Method[] methods = _remoteInterface.getMethods();
+ TreeMap map = new TreeMap();
+ int n = methods.length;
+ for (int i = 0; i < n; i++)
+ {
+ Method method = methods[i];
+ String methodSig = JavaMethod.getShortSignature(method);
+ if (map.get(methodSig) != null)
+ {
+ continue;
+ }
+ String methodName = method.getName();
+ if (methodName.startsWith("_"))
+ {
+ if (! methodName.equals("_is_a"))
+ {
+ continue;
+ }
+ }
+ map.put(methodSig, method);
+ }
+ n = map.size();
+ methods = new Method[n];
+ Iterator v = map.values().iterator();
+ for (int i = 0; i < n; i++)
+ {
+ Method method = (Method)v.next();
+ methods[i] = method;
+ }
+ return methods;
+ }
+
+ /**
+ ** Return the RMI-IIOP operation name for a remote method.
+ **/
+ public String getOperation(Method method)
+ {
+ if (! isOverloaded(method))
+ {
+ if (isGetAttribute(method) || isSetAttribute(method))
+ {
+ String prefix = method.getName().startsWith("set") ? "set" : "get";
+ String attribute = getAttributeName(method);
+ return "_" + prefix + "_" + attribute;
+ }
+ return method.getName();
+ }
+ Class[] types = method.getParameterTypes();
+ String suffix = "";
+ if (types.length == 0)
+ {
+ suffix = "__";
+ }
+ else
+ {
+ for (int i = 0; i < types.length; i++)
+ {
+ Class type = types[i];
+ suffix += "__" + overload(type, 0);
+ }
+ }
+ return method.getName() + suffix;
+ }
+
+ public String getReadMethod(String type)
+ {
+ String m = (String)_readMethods.get(type);
+ if (m == null)
+ {
+ m = "readObject";
+ }
+ return m;
+ }
+
+ public String getWriteMethod(String type)
+ {
+ String m = (String)_writeMethods.get(type);
+ if (m == null)
+ {
+ m = "writeObject";
+ }
+ return m;
+ }
+
+ public Integer getValueTypeIndex(ClassWriter cw, HashMap vtMap, String type)
+ {
+ Integer vtIndex = (Integer)vtMap.get(type);
+ if (vtIndex == null)
+ {
+ vtIndex = new Integer(vtMap.size() + 1);
+ vtMap.put(type, vtIndex);
+ StaticField vt = cw.newStaticField(ValueType.class, "type$" + vtIndex,
+ cw.invoke("org.apache.geronimo.interop.rmi.iiop.ValueType.getInstance",
+ type + ".class"));
+ vt.setPrivate();
+ vt.setFinal();
+ }
+ return vtIndex;
+ }
+
+ public boolean isHolder(Class c)
+ {
+ if (c.getName().endsWith("Holder"))
+ {
+ if (org.omg.CORBA.portable.Streamable.class.isAssignableFrom(c))
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ //public boolean isOutParameter(Method method, int parameter)
+ public boolean isOutParameter(Component comp, Method method, int parameter)
+ {
+ AttributeList attributes = comp.getAttributes();
+ for (Iterator i = attributes.iterator(); i.hasNext();)
+ {
+ Attribute a = (Attribute)i.next();
+ /*
+ * How does an EJB have an out parameter?
+
+ if (a instanceof IdlOutAttribute)
+ {
+ IdlOutAttribute ioa = (IdlOutAttribute)a;
+ if (ioa.matches(method) && ioa.getParameterIndex() == parameter)
+ {
+ return true;
+ }
+ }
+ */
+ }
+
+ return false;
+ }
+
+ public boolean isOverloaded(Method method)
+ {
+ String name = method.getName();
+ String sig1 = null;
+ Method[] methods = _remoteInterface.getMethods();
+ for (int i = 0; i < methods.length; i++)
+ {
+ Method otherMethod = methods[i];
+ if (otherMethod.getName().equals(name))
+ {
+ if (sig1 == null)
+ {
+ sig1 = JavaMethod.getShortSignature(method);
+ }
+ String sig2 = JavaMethod.getShortSignature(otherMethod);
+ if (! sig1.equals(sig2))
+ {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ // protected methods
+
+ protected String getAttributeName(Method method)
+ {
+ String name = method.getName();
+ if (name.startsWith("get") || name.startsWith("set"))
+ {
+ return StringUtil.getLowerFirstIfFirst2NotUpper(name.substring(3));
+ }
+ else if (name.startsWith("is"))
+ {
+ return StringUtil.getLowerFirstIfFirst2NotUpper(name.substring(2));
+ }
+ else
+ {
+ throw new IllegalArgumentException("method = " + method);
+ }
+ }
+
+ private boolean isGetAttribute(Method method)
+ {
+ String name = method.getName();
+ if (name.startsWith("get"))
+ {
+ if (name.length() < 4)
+ {
+ return false;
+ }
+ }
+ else if (name.startsWith("is"))
+ {
+ if (name.length() < 3)
+ {
+ return false;
+ }
+ }
+ else
+ {
+ return false;
+ }
+ return method.getExceptionTypes().length == 0
+ && method.getParameterTypes().length == 0
+ && method.getReturnType() != null;
+ }
+
+ protected boolean isSetAttribute(Method method)
+ {
+ String name = method.getName();
+ if (name.startsWith("set"))
+ {
+ if (name.length() < 4)
+ {
+ return false;
+ }
+ }
+ String attribute = name.substring(3);
+ Method getMethod;
+ try
+ {
+ String getAttribute = "get" + attribute;
+ getMethod = _remoteInterface.getMethod(getAttribute, new Class[0]);
+ }
+ catch (Exception noGetAttribute)
+ {
+ try
+ {
+ String isAttribute = "is" + attribute;
+ getMethod = _remoteInterface.getMethod(isAttribute, new Class[0]);
+ }
+ catch (Exception noIsAttribute)
+ {
+ return false;
+ }
+ }
+ if (getMethod.getExceptionTypes().length != 0)
+ {
+ return false;
+ }
+ Class getReturnType = getMethod.getReturnType();
+ if (getReturnType == null)
+ {
+ return false;
+ }
+ if (method.getExceptionTypes().length != 0)
+ {
+ return false;
+ }
+ Class[] setParameters = method.getParameterTypes();
+ if (setParameters.length != 1)
+ {
+ return false;
+ }
+ Class setParameterType = setParameters[0];
+ return setParameterType == getReturnType;
+ }
+
+ /**
+ ** Get mangled parameter type for RMI-IIOP overloading.
+ **/
+ protected String overload(Class type)
+ {
+ return overload(type, 0);
+ }
+
+ /**
+ ** Get mangled parameter type for RMI-IIOP overloading.
+ **/
+ protected String overload(Class type, int dim)
+ {
+ String typeName = JavaType.getName(type);
+ String overload = (String)_overloadTypes.get(typeName);
+ boolean wasInOverloadTypes = false;
+ if (overload != null)
+ {
+ typeName = overload;
+ overload = null;
+ wasInOverloadTypes = true;
+ }
+ if (type.isArray())
+ {
+ dim = 1;
+ Class element = type.getComponentType();
+ while (element.isArray())
+ {
+ dim++;
+ element = element.getComponentType();
+ }
+ return "org_omg_boxedRMI_" + overload(element, dim);
+ }
+ else
+ {
+ if (dim != 0)
+ {
+ int pos = typeName.lastIndexOf(".");
+ if (pos != -1)
+ {
+ typeName = typeName.substring(0, pos) + "_seq" + dim
+ + "_" + typeName.substring(pos + 1);
+ }
+ }
+ if (overload == null && ! wasInOverloadTypes)
+ {
+ if (org.omg.CORBA.portable.IDLEntity.class.isAssignableFrom(type))
+ {
+ // TODO: don't do this for valuetype as IDL entity?
+ typeName = "org_omg_boxedIDL_" + typeName;
+ }
+ }
+ return typeName.replace('.', '_');
+ }
+ }
+}
Propchange: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/rmi/iiop/compiler/StubCompiler.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/rmi/iiop/compiler/StubCompiler.txt
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/interop/src/java/org/apache/geronimo/interop/rmi/iiop/compiler/StubCompiler.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/branches/1.0/modules/j2ee-builder/LICENSE.txt
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.0/modules/j2ee-builder/LICENSE.txt?rev=356022&r1=356021&r2=356022&view=diff
==============================================================================
--- geronimo/branches/1.0/modules/j2ee-builder/LICENSE.txt (original)
+++ geronimo/branches/1.0/modules/j2ee-builder/LICENSE.txt Sun Dec 11 12:58:34 2005
@@ -1,203 +1,203 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
Propchange: geronimo/branches/1.0/modules/j2ee-builder/LICENSE.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/branches/1.0/modules/j2ee-builder/LICENSE.txt
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-builder/LICENSE.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/branches/1.0/modules/j2ee-builder/NOTICE.txt
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.0/modules/j2ee-builder/NOTICE.txt?rev=356022&r1=356021&r2=356022&view=diff
==============================================================================
--- geronimo/branches/1.0/modules/j2ee-builder/NOTICE.txt (original)
+++ geronimo/branches/1.0/modules/j2ee-builder/NOTICE.txt Sun Dec 11 12:58:34 2005
@@ -1,3 +1,3 @@
-This product includes software developed by
-The Apache Software Foundation (http://www.apache.org/).
-
+This product includes software developed by
+The Apache Software Foundation (http://www.apache.org/).
+
Propchange: geronimo/branches/1.0/modules/j2ee-builder/NOTICE.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/branches/1.0/modules/j2ee-builder/NOTICE.txt
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-builder/NOTICE.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: geronimo/branches/1.0/modules/j2ee-builder/project.properties
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-author date id rev
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-builder/project.properties
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: geronimo/branches/1.0/modules/j2ee-builder/src/schema/geronimo-application-1.0.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-author date id rev
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-builder/src/schema/geronimo-application-1.0.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-builder/src/test-ear/test-war/hello.txt
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-author date id rev
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-builder/src/test-ear/test-war/hello.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: geronimo/branches/1.0/modules/j2ee-builder/src/test-ear13/test-war/hello.txt
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-author date id rev
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-builder/src/test-ear13/test-war/hello.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: geronimo/branches/1.0/modules/j2ee-schema/LICENSE.txt
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/LICENSE.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: geronimo/branches/1.0/modules/j2ee-schema/NOTICE.txt
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/NOTICE.txt
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: geronimo/branches/1.0/modules/j2ee-schema/project.properties
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/project.properties
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_2schema/ejb-jar_1_1.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_2schema/ejb-jar_1_1.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_2schema/web-app_2_2.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_2schema/web-app_2_2.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_3schema/connector_1_0.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_3schema/connector_1_0.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_3schema/ejb-jar_2_0.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_3schema/ejb-jar_2_0.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_3schema/web-app_2_3.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_3schema/web-app_2_3.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/application-client_1_4.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/application-client_1_4.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/application_1_4.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/application_1_4.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/connector_1_5.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/connector_1_5.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/ejb-jar_2_1.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/ejb-jar_2_1.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_1_4.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_1_4.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_jaxrpc_mapping_1_1.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_jaxrpc_mapping_1_1.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_jaxrpc_mapping_1_1.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_web_services_1_1.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_web_services_1_1.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_web_services_1_1.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_web_services_client_1_1.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/j2ee_web_services_client_1_1.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/jsp_2_0.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/jsp_2_0.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/web-app_2_4.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/web-app_2_4.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/web-jsptaglibrary_2_0.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/web-jsptaglibrary_2_0.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/xml.xsd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/j2ee_1_4schema/xml.xsd
------------------------------------------------------------------------------
svn:mime-type = text/xml
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/resources/schemaorg_apache_xmlbeans/src/modules/j2ee-schema/src/j2ee_1_2dtd/application-client_1_2.dtd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/resources/schemaorg_apache_xmlbeans/src/modules/j2ee-schema/src/j2ee_1_2dtd/application-client_1_2.dtd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/resources/schemaorg_apache_xmlbeans/src/modules/j2ee-schema/src/j2ee_1_2dtd/application-client_1_2.dtd
------------------------------------------------------------------------------
svn:mime-type = text/plain
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/resources/schemaorg_apache_xmlbeans/src/modules/j2ee-schema/src/j2ee_1_2dtd/application_1_2.dtd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/resources/schemaorg_apache_xmlbeans/src/modules/j2ee-schema/src/j2ee_1_2dtd/application_1_2.dtd
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Sun Dec 11 12:58:34 2005
@@ -1 +1 @@
-Rev Date
+Date Author Id Revision HeadURL
Propchange: geronimo/branches/1.0/modules/j2ee-schema/src/resources/schemaorg_apache_xmlbeans/src/modules/j2ee-schema/src/j2ee_1_2dtd/application_1_2.dtd
------------------------------------------------------------------------------
svn:mime-type = text/plain