[Libreoffice-commits] core.git: jurt/com ridljar/com ridljar/Jar_ridl.mk ridljar/test

Noel Grandin noel at peralex.com
Tue Jun 7 08:49:52 UTC 2016


 jurt/com/sun/star/lib/uno/environments/remote/Job.java               |    3 
 jurt/com/sun/star/lib/uno/environments/remote/Message.java           |   16 
 jurt/com/sun/star/lib/uno/protocols/urp/Marshal.java                 |   22 -
 jurt/com/sun/star/lib/uno/protocols/urp/PendingRequests.java         |    9 
 jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java               |   13 
 jurt/com/sun/star/lib/uno/protocols/urp/UrpMessage.java              |    6 
 jurt/com/sun/star/lib/uno/protocols/urp/urp.java                     |   44 --
 ridljar/Jar_ridl.mk                                                  |    4 
 ridljar/com/sun/star/lib/uno/typedesc/FieldDescription.java          |   23 -
 ridljar/com/sun/star/lib/uno/typedesc/MemberDescriptionHelper.java   |    9 
 ridljar/com/sun/star/lib/uno/typedesc/MethodDescription.java         |   53 +-
 ridljar/com/sun/star/lib/uno/typedesc/TypeDescription.java           |  215 +++++++---
 ridljar/com/sun/star/uno/IFieldDescription.java                      |   46 --
 ridljar/com/sun/star/uno/IMemberDescription.java                     |   61 --
 ridljar/com/sun/star/uno/IMethodDescription.java                     |   73 ---
 ridljar/com/sun/star/uno/ITypeDescription.java                       |  174 --------
 ridljar/com/sun/star/uno/Type.java                                   |   21 
 ridljar/com/sun/star/uno/UnoRuntime.java                             |    4 
 ridljar/test/com/sun/star/lib/uno/typedesc/TypeDescription_Test.java |   59 +-
 19 files changed, 323 insertions(+), 532 deletions(-)

New commits:
commit 970b0ebb67d4033d70795e586a26c7a695c14194
Author: Noel Grandin <noel at peralex.com>
Date:   Mon Jun 6 14:21:20 2016 +0200

    [API CHANGE] Drop deprecated  I*Description interfaces
    
    And make the fields of com.sun.star.uno.Type private
    
    Change-Id: Ied7698b4157460e9726f271092c92b6b382239fd
    Reviewed-on: https://gerrit.libreoffice.org/25971
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    Tested-by: Stephan Bergmann <sbergman at redhat.com>

diff --git a/jurt/com/sun/star/lib/uno/environments/remote/Job.java b/jurt/com/sun/star/lib/uno/environments/remote/Job.java
index f65ffff..8ec4492 100644
--- a/jurt/com/sun/star/lib/uno/environments/remote/Job.java
+++ b/jurt/com/sun/star/lib/uno/environments/remote/Job.java
@@ -27,7 +27,6 @@ import java.lang.reflect.InvocationTargetException;
 
 import com.sun.star.lib.uno.typedesc.MethodDescription;
 import com.sun.star.uno.Any;
-import com.sun.star.uno.IMethodDescription;
 import com.sun.star.uno.Type;
 import com.sun.star.uno.UnoRuntime;
 import com.sun.star.uno.XCurrentContext;
@@ -79,7 +78,7 @@ public class Job {
         if (_iMessage.isRequest()) {
             Object result = null;
             Throwable exception = null;
-            IMethodDescription md = _iMessage.getMethod();
+            MethodDescription md = _iMessage.getMethod();
             Object[] args = _iMessage.getArguments();
             XCurrentContext oldCC = UnoRuntime.getCurrentContext();
             UnoRuntime.setCurrentContext(_iMessage.getCurrentContext());
diff --git a/jurt/com/sun/star/lib/uno/environments/remote/Message.java b/jurt/com/sun/star/lib/uno/environments/remote/Message.java
index 4a6921b..b34295a 100644
--- a/jurt/com/sun/star/lib/uno/environments/remote/Message.java
+++ b/jurt/com/sun/star/lib/uno/environments/remote/Message.java
@@ -19,8 +19,8 @@
 
 package com.sun.star.lib.uno.environments.remote;
 
-import com.sun.star.uno.IMethodDescription;
-import com.sun.star.uno.ITypeDescription;
+import com.sun.star.lib.uno.typedesc.MethodDescription;
+import com.sun.star.lib.uno.typedesc.TypeDescription;
 import com.sun.star.uno.XCurrentContext;
 
 /**
@@ -29,7 +29,7 @@ import com.sun.star.uno.XCurrentContext;
 public class Message {
     public Message(
         ThreadId threadId, boolean request, String objectId,
-        ITypeDescription type, IMethodDescription method, boolean synchronous,
+        TypeDescription type, MethodDescription method, boolean synchronous,
         XCurrentContext currentContext, boolean abnormalTermination,
         Object result, Object[] arguments)
     {
@@ -87,7 +87,7 @@ public class Message {
      * @return the (non-<code>null</code>) type for a request, <code>null</code>
      * for a reply.
      */
-    public final ITypeDescription getType() {
+    public final TypeDescription getType() {
         return type;
     }
 
@@ -95,13 +95,13 @@ public class Message {
      * Returns the method description of a request message.
      *
      * <p>Valid only for request messages.  The returned
-     * <code>IMethodDescription</code> is consistent with the type of the
+     * <code>MethodDescription</code> is consistent with the type of the
      * message.</p>
      *
      * @return the (non-<code>null</code>) method description for a request,
      * <code>null</code> for a reply.
      */
-    public final IMethodDescription getMethod() {
+    public final MethodDescription getMethod() {
         return method;
     }
 
@@ -177,8 +177,8 @@ public class Message {
     private final ThreadId threadId;
     private final boolean request;
     private final String objectId;
-    private final ITypeDescription type;
-    private final IMethodDescription method;
+    private final TypeDescription type;
+    private final MethodDescription method;
     private final boolean synchronous;
     private final XCurrentContext currentContext;
     private final boolean abnormalTermination;
diff --git a/jurt/com/sun/star/lib/uno/protocols/urp/Marshal.java b/jurt/com/sun/star/lib/uno/protocols/urp/Marshal.java
index b7425d8..106a873 100644
--- a/jurt/com/sun/star/lib/uno/protocols/urp/Marshal.java
+++ b/jurt/com/sun/star/lib/uno/protocols/urp/Marshal.java
@@ -18,23 +18,23 @@
  */
 package com.sun.star.lib.uno.protocols.urp;
 
+import java.io.ByteArrayOutputStream;
+import java.io.DataOutput;
+import java.io.DataOutputStream;
+import java.io.IOException;
+import java.lang.reflect.Array;
+import java.lang.reflect.InvocationTargetException;
+
 import com.sun.star.lib.uno.environments.remote.ThreadId;
+import com.sun.star.lib.uno.typedesc.FieldDescription;
 import com.sun.star.lib.uno.typedesc.TypeDescription;
 import com.sun.star.uno.Any;
 import com.sun.star.uno.Enum;
 import com.sun.star.uno.IBridge;
-import com.sun.star.uno.IFieldDescription;
 import com.sun.star.uno.Type;
 import com.sun.star.uno.TypeClass;
 import com.sun.star.uno.XInterface;
 
-import java.io.ByteArrayOutputStream;
-import java.io.DataOutput;
-import java.io.DataOutputStream;
-import java.io.IOException;
-import java.lang.reflect.Array;
-import java.lang.reflect.InvocationTargetException;
-
 final class Marshal {
     public Marshal(IBridge bridge, short cacheSize) {
         this.bridge = bridge;
@@ -281,7 +281,7 @@ final class Marshal {
         if (value == null) {
             writeCompressedNumber(0);
         } else {
-            TypeDescription ctype = (TypeDescription) type.getComponentType();
+            TypeDescription ctype = type.getComponentType();
             if (ctype.getTypeClass() == TypeClass.BYTE) {
                 byte[] data = (byte[]) value;
                 writeCompressedNumber(data.length);
@@ -310,10 +310,10 @@ final class Marshal {
     }
 
     private void writeStructValue(TypeDescription type, Object value) throws IllegalAccessException {
-        IFieldDescription[] fields = type.getFieldDescriptions();
+        FieldDescription[] fields = type.getFieldDescriptions();
         for (int i = 0; i < fields.length; ++i) {
             writeValue(
-                (TypeDescription) fields[i].getTypeDescription(),
+                fields[i].getTypeDescription(),
                 value == null ? null : fields[i].getField().get(value));
         }
     }
diff --git a/jurt/com/sun/star/lib/uno/protocols/urp/PendingRequests.java b/jurt/com/sun/star/lib/uno/protocols/urp/PendingRequests.java
index 9dca51c..928cdcd 100644
--- a/jurt/com/sun/star/lib/uno/protocols/urp/PendingRequests.java
+++ b/jurt/com/sun/star/lib/uno/protocols/urp/PendingRequests.java
@@ -19,11 +19,12 @@
 
 package com.sun.star.lib.uno.protocols.urp;
 
-import com.sun.star.lib.uno.environments.remote.ThreadId;
-import com.sun.star.uno.IMethodDescription;
 import java.util.HashMap;
 import java.util.Stack;
 
+import com.sun.star.lib.uno.environments.remote.ThreadId;
+import com.sun.star.lib.uno.typedesc.MethodDescription;
+
 final class PendingRequests {
 
     public synchronized void push(ThreadId tid, Item item) {
@@ -46,7 +47,7 @@ final class PendingRequests {
 
     public static final class Item {
         public Item(
-            boolean internal, IMethodDescription function, Object[] arguments)
+            boolean internal, MethodDescription function, Object[] arguments)
         {
             this.internal = internal;
             this.function = function;
@@ -54,7 +55,7 @@ final class PendingRequests {
         }
 
         public final boolean internal;
-        public final IMethodDescription function;
+        public final MethodDescription function;
         public final Object[] arguments;
     }
 
diff --git a/jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java b/jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java
index 2aa97d9..c16d192 100644
--- a/jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java
+++ b/jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java
@@ -30,10 +30,10 @@ import com.sun.star.lib.uno.typedesc.TypeDescription;
 import com.sun.star.uno.Any;
 import com.sun.star.uno.Enum;
 import com.sun.star.uno.IBridge;
-import com.sun.star.uno.IFieldDescription;
 import com.sun.star.uno.Type;
 import com.sun.star.uno.TypeClass;
 import com.sun.star.uno.XInterface;
+import com.sun.star.lib.uno.typedesc.FieldDescription;
 
 final class Unmarshal {
     public Unmarshal(IBridge bridge, int cacheSize) {
@@ -329,10 +329,9 @@ final class Unmarshal {
         case TypeClass.SEQUENCE_value:
             {
                 Object value = readSequenceValue(type);
-                TypeDescription ctype = (TypeDescription)
-                    type.getComponentType();
+                TypeDescription ctype = type.getComponentType();
                 while (ctype.getTypeClass() == TypeClass.SEQUENCE) {
-                    ctype = (TypeDescription) ctype.getComponentType();
+                    ctype = ctype.getComponentType();
                 }
                 switch (ctype.getTypeClass().getValue()) {
                 case TypeClass.UNSIGNED_SHORT_value:
@@ -377,7 +376,7 @@ final class Unmarshal {
 
     private Object readSequenceValue(TypeDescription type) throws IOException {
         int len = readCompressedNumber();
-        TypeDescription ctype = (TypeDescription) type.getComponentType();
+        TypeDescription ctype = type.getComponentType();
         if (ctype.getTypeClass() == TypeClass.BYTE) {
             byte[] data = new byte[len];
             readBytes(data);
@@ -454,13 +453,13 @@ final class Unmarshal {
     }
 
     private void readFields(TypeDescription type, Object value) {
-        IFieldDescription[] fields = type.getFieldDescriptions();
+        FieldDescription[] fields = type.getFieldDescriptions();
         for (int i = 0; i < fields.length; ++i) {
             try {
                 fields[i].getField().set(
                     value,
                     readValue(
-                        (TypeDescription) fields[i].getTypeDescription()));
+                        fields[i].getTypeDescription()));
             } catch (IllegalAccessException e) {
                 throw new RuntimeException(e);
             }
diff --git a/jurt/com/sun/star/lib/uno/protocols/urp/UrpMessage.java b/jurt/com/sun/star/lib/uno/protocols/urp/UrpMessage.java
index 5b4f2fd..34cdf70 100644
--- a/jurt/com/sun/star/lib/uno/protocols/urp/UrpMessage.java
+++ b/jurt/com/sun/star/lib/uno/protocols/urp/UrpMessage.java
@@ -21,14 +21,14 @@ package com.sun.star.lib.uno.protocols.urp;
 
 import com.sun.star.lib.uno.environments.remote.Message;
 import com.sun.star.lib.uno.environments.remote.ThreadId;
-import com.sun.star.uno.IMethodDescription;
-import com.sun.star.uno.ITypeDescription;
+import com.sun.star.lib.uno.typedesc.MethodDescription;
+import com.sun.star.lib.uno.typedesc.TypeDescription;
 import com.sun.star.uno.XCurrentContext;
 
 final class UrpMessage extends Message {
     public UrpMessage(
         ThreadId threadId, boolean request, String objectId,
-        ITypeDescription type, IMethodDescription method, boolean synchronous,
+        TypeDescription type, MethodDescription method, boolean synchronous,
         XCurrentContext currentContext, boolean abnormalTermination,
         Object result, Object[] arguments, boolean internal)
     {
diff --git a/jurt/com/sun/star/lib/uno/protocols/urp/urp.java b/jurt/com/sun/star/lib/uno/protocols/urp/urp.java
index 7a87306..0ce9d35 100644
--- a/jurt/com/sun/star/lib/uno/protocols/urp/urp.java
+++ b/jurt/com/sun/star/lib/uno/protocols/urp/urp.java
@@ -30,8 +30,6 @@ import com.sun.star.lib.uno.typedesc.MethodDescription;
 import com.sun.star.lib.uno.typedesc.TypeDescription;
 import com.sun.star.uno.Any;
 import com.sun.star.uno.IBridge;
-import com.sun.star.uno.IMethodDescription;
-import com.sun.star.uno.ITypeDescription;
 import com.sun.star.uno.Type;
 import com.sun.star.uno.TypeClass;
 import com.sun.star.uno.UnoRuntime;
@@ -159,7 +157,7 @@ public final class urp implements IProtocol {
             int header = HEADER_LONGHEADER;
             PendingRequests.Item pending = pendingIn.pop(tid);
             TypeDescription resultType;
-            ITypeDescription[] argTypes;
+            TypeDescription[] argTypes;
             Object[] args;
             if (exception) {
                 header |= HEADER_EXCEPTION;
@@ -167,8 +165,7 @@ public final class urp implements IProtocol {
                 argTypes = null;
                 args = null;
             } else {
-                resultType = (TypeDescription)
-                    pending.function.getReturnSignature();
+                resultType = pending.function.getReturnSignature();
                 argTypes = pending.function.getOutSignature();
                 args = pending.arguments;
             }
@@ -187,7 +184,7 @@ public final class urp implements IProtocol {
                 for (int i = 0; i < argTypes.length; ++i) {
                     if (argTypes[i] != null) {
                         marshal.writeValue(
-                            (TypeDescription) argTypes[i].getComponentType(),
+                            argTypes[i].getComponentType(),
                             Array.get(args[i], 0));
                     }
                 }
@@ -417,13 +414,13 @@ public final class urp implements IProtocol {
             ? (XCurrentContext) unmarshal.readInterface(
                 new Type(XCurrentContext.class))
             : null;
-        IMethodDescription desc = inL1Type.getMethodDescription(functionId);
+        MethodDescription desc = inL1Type.getMethodDescription(functionId);
         if (desc == null) {
             throw new IOException(
                 "read URP request with unsupported function ID " + functionId);
         }
-        ITypeDescription[] inSig = desc.getInSignature();
-        ITypeDescription[] outSig = desc.getOutSignature();
+        TypeDescription[] inSig = desc.getInSignature();
+        TypeDescription[] outSig = desc.getOutSignature();
         Object[] args = new Object[inSig.length];
         for (int i = 0; i < args.length; ++i) {
             if (inSig[i] != null) {
@@ -433,10 +430,10 @@ public final class urp implements IProtocol {
                     Array.set(
                         inout, 0,
                         unmarshal.readValue(
-                            (TypeDescription) outSig[i].getComponentType()));
+                            outSig[i].getComponentType()));
                     args[i] = inout;
                 } else {
-                    args[i] = unmarshal.readValue((TypeDescription) inSig[i]);
+                    args[i] = unmarshal.readValue(inSig[i]);
                 }
             } else {
                 args[i] = Array.newInstance(
@@ -459,7 +456,7 @@ public final class urp implements IProtocol {
         }
         PendingRequests.Item pending = pendingOut.pop(inL1Tid);
         TypeDescription resultType;
-        ITypeDescription[] argTypes;
+        TypeDescription[] argTypes;
         Object[] args;
         boolean exception = (header & HEADER_EXCEPTION) != 0;
         if (exception) {
@@ -467,8 +464,7 @@ public final class urp implements IProtocol {
             argTypes = null;
             args = null;
         } else {
-            resultType = (TypeDescription)
-                pending.function.getReturnSignature();
+            resultType = pending.function.getReturnSignature();
             argTypes = pending.function.getOutSignature();
             args = pending.arguments;
         }
@@ -480,7 +476,7 @@ public final class urp implements IProtocol {
                     Array.set(
                         args[i], 0,
                         unmarshal.readValue(
-                            (TypeDescription) argTypes[i].getComponentType()));
+                            argTypes[i].getComponentType()));
                 }
             }
         }
@@ -494,7 +490,7 @@ public final class urp implements IProtocol {
         ThreadId tid, Object[] arguments)
         throws IOException
     {
-        IMethodDescription desc = type.getMethodDescription(function);
+        MethodDescription desc = type.getMethodDescription(function);
         synchronized (output) {
             if (desc.getIndex() == MethodDescription.ID_RELEASE
                 && releaseQueue.size() < MAX_RELEASE_QUEUE_SIZE)
@@ -512,7 +508,7 @@ public final class urp implements IProtocol {
 
     private boolean writeRequest(
         boolean internal, String oid, TypeDescription type,
-        IMethodDescription desc, ThreadId tid, Object[] arguments,
+        MethodDescription desc, ThreadId tid, Object[] arguments,
         boolean flush)
         throws IOException
     {
@@ -589,17 +585,17 @@ public final class urp implements IProtocol {
                 UnoRuntime.getCurrentContext(),
                 new Type(XCurrentContext.class));
         }
-        ITypeDescription[] inSig = desc.getInSignature();
-        ITypeDescription[] outSig = desc.getOutSignature();
+        TypeDescription[] inSig = desc.getInSignature();
+        TypeDescription[] outSig = desc.getOutSignature();
         for (int i = 0; i < inSig.length; ++i) {
             if (inSig[i] != null) {
                 if (outSig[i] != null) {
                     marshal.writeValue(
-                        (TypeDescription) outSig[i].getComponentType(),
+                        outSig[i].getComponentType(),
                         ((Object[]) arguments[i])[0]);
                 } else {
                     marshal.writeValue(
-                        (TypeDescription) inSig[i], arguments[i]);
+                        inSig[i], arguments[i]);
                 }
             }
         }
@@ -679,7 +675,7 @@ public final class urp implements IProtocol {
     private static final class QueuedRelease {
         public QueuedRelease(
             boolean internal, String objectId, TypeDescription type,
-            IMethodDescription method, ThreadId threadId)
+            MethodDescription method, ThreadId threadId)
         {
             this.internal = internal;
             this.objectId = objectId;
@@ -691,7 +687,7 @@ public final class urp implements IProtocol {
         public final boolean internal;
         public final String objectId;
         public final TypeDescription type;
-        public final IMethodDescription method;
+        public final MethodDescription method;
         public final ThreadId threadId;
     }
 
@@ -756,7 +752,7 @@ public final class urp implements IProtocol {
 
     private ThreadId outL1Tid = null;
     private String outL1Oid = null;
-    private ITypeDescription outL1Type = null;
+    private TypeDescription outL1Type = null;
 
     private final ArrayList<QueuedRelease> releaseQueue = new ArrayList<QueuedRelease>(); // of QueuedRelease
 }
diff --git a/ridljar/Jar_ridl.mk b/ridljar/Jar_ridl.mk
index cdee781..90bdc94 100644
--- a/ridljar/Jar_ridl.mk
+++ b/ridljar/Jar_ridl.mk
@@ -37,12 +37,8 @@ $(eval $(call gb_Jar_add_sourcefiles,ridl,\
     ridljar/com/sun/star/uno/Enum \
     ridljar/com/sun/star/uno/IBridge \
     ridljar/com/sun/star/uno/IEnvironment \
-    ridljar/com/sun/star/uno/IFieldDescription \
     ridljar/com/sun/star/uno/IMapping \
-    ridljar/com/sun/star/uno/IMemberDescription \
-    ridljar/com/sun/star/uno/IMethodDescription \
     ridljar/com/sun/star/uno/IQueryInterface \
-    ridljar/com/sun/star/uno/ITypeDescription \
     ridljar/com/sun/star/uno/Type \
     ridljar/com/sun/star/uno/UnoRuntime \
 ))
diff --git a/ridljar/com/sun/star/lib/uno/typedesc/FieldDescription.java b/ridljar/com/sun/star/lib/uno/typedesc/FieldDescription.java
index 01b02fa..6dcdc99 100644
--- a/ridljar/com/sun/star/lib/uno/typedesc/FieldDescription.java
+++ b/ridljar/com/sun/star/lib/uno/typedesc/FieldDescription.java
@@ -18,13 +18,14 @@
 
 package com.sun.star.lib.uno.typedesc;
 
-import com.sun.star.uno.IFieldDescription;
-import com.sun.star.uno.ITypeDescription;
 import java.lang.reflect.Field;
 
-final class FieldDescription implements IFieldDescription {
+/**
+ * Describes non method members.
+ */
+public final class FieldDescription {
     public FieldDescription(
-        String name, int index, ITypeDescription typeDescription, Field field)
+        String name, int index, TypeDescription typeDescription, Field field)
     {
         this.name = name;
         this.index = index;
@@ -52,16 +53,26 @@ final class FieldDescription implements IFieldDescription {
         return index;
     }
 
-    public ITypeDescription getTypeDescription() {
+    /**
+     * Gives the name of this member.
+     * <p>
+     * @return  the name
+     */
+    public TypeDescription getTypeDescription() {
         return typeDescription;
     }
 
+    /**
+     * Gives native java field of this member.
+     * <p>
+     * @return  the java field
+     */
     public Field getField() {
         return field;
     }
 
     private final String name;
     private final int index;
-    private final ITypeDescription typeDescription;
+    private final TypeDescription typeDescription;
     private final Field field;
 }
diff --git a/ridljar/com/sun/star/lib/uno/typedesc/MemberDescriptionHelper.java b/ridljar/com/sun/star/lib/uno/typedesc/MemberDescriptionHelper.java
index a09ca2c..27a5361 100644
--- a/ridljar/com/sun/star/lib/uno/typedesc/MemberDescriptionHelper.java
+++ b/ridljar/com/sun/star/lib/uno/typedesc/MemberDescriptionHelper.java
@@ -18,11 +18,10 @@
 
 package com.sun.star.lib.uno.typedesc;
 
-import com.sun.star.uno.ITypeDescription;
 import com.sun.star.uno.TypeClass;
 
 final class MemberDescriptionHelper {
-    public static boolean isUnsigned(ITypeDescription desc) {
+    public static boolean isUnsigned(TypeDescription desc) {
         switch (getElementTypeClass(desc).getValue()) {
         case TypeClass.UNSIGNED_SHORT_value:
         case TypeClass.UNSIGNED_LONG_value:
@@ -34,15 +33,15 @@ final class MemberDescriptionHelper {
         }
     }
 
-    public static boolean isAny(ITypeDescription desc) {
+    public static boolean isAny(TypeDescription desc) {
         return getElementTypeClass(desc) == TypeClass.ANY;
     }
 
-    public static boolean isInterface(ITypeDescription desc) {
+    public static boolean isInterface(TypeDescription desc) {
         return getElementTypeClass(desc) == TypeClass.INTERFACE;
     }
 
-    private static TypeClass getElementTypeClass(ITypeDescription desc) {
+    private static TypeClass getElementTypeClass(TypeDescription desc) {
         for (;; desc = desc.getComponentType()) {
             TypeClass tc = desc.getTypeClass();
             if (tc != TypeClass.SEQUENCE) {
diff --git a/ridljar/com/sun/star/lib/uno/typedesc/MethodDescription.java b/ridljar/com/sun/star/lib/uno/typedesc/MethodDescription.java
index b4086e2..6cbbb16 100644
--- a/ridljar/com/sun/star/lib/uno/typedesc/MethodDescription.java
+++ b/ridljar/com/sun/star/lib/uno/typedesc/MethodDescription.java
@@ -18,14 +18,15 @@
 
 package com.sun.star.lib.uno.typedesc;
 
-import com.sun.star.uno.IMethodDescription;
-import com.sun.star.uno.ITypeDescription;
 import java.lang.reflect.Method;
 
-public final class MethodDescription implements IMethodDescription {
+/**
+ * Allows to examine a method in detail. It gives a view to java methods from a UNO point.
+ */
+public final class MethodDescription {
     MethodDescription(
-        String name, int index, boolean oneway, ITypeDescription[] inSignature,
-        ITypeDescription[] outSignature, ITypeDescription returnSignature,
+        String name, int index, boolean oneway, TypeDescription[] inSignature,
+        TypeDescription[] outSignature, TypeDescription returnSignature,
         Method method)
     {
         this.name = name;
@@ -37,7 +38,7 @@ public final class MethodDescription implements IMethodDescription {
         this.method = method;
     }
 
-    MethodDescription(IMethodDescription other, int index) {
+    MethodDescription(MethodDescription other, int index) {
         this(
             other.getName(), index, other.isOneway(), other.getInSignature(),
             other.getOutSignature(), other.getReturnSignature(),
@@ -64,26 +65,54 @@ public final class MethodDescription implements IMethodDescription {
         return index;
     }
 
+    /**
+     * Indicates if this method is <code>oneWay</code>,
+     * respectively if this method may become executed asynchronously.
+     * @return  true means may execute asynchronously .
+     */
     public boolean isOneway() {
         return oneway;
     }
 
+    /**
+     * Indicates if this method is const.
+     * @return true means it is const.
+     */
     public boolean isConst() {
         return false;
     }
 
-    public ITypeDescription[] getInSignature() {
+    /**
+     * Gives any array of <code>TypeDescription</code> of
+     * the [in] parameters.
+     * @return the in parameters
+     */
+    public TypeDescription[] getInSignature() {
         return inSignature;
     }
 
-    public ITypeDescription[] getOutSignature() {
+    /**
+     * Gives any array of <code>TypeDescription</code> of
+     * the [out] parameters.
+     * @return the out parameters
+     */
+    public TypeDescription[] getOutSignature() {
         return outSignature;
     }
 
-    public ITypeDescription getReturnSignature() {
+    /**
+     * Gives the <code>TypeDescription</code> of
+     * the return type.
+     * @return the return type <code>TypeDescription</code>
+     */
+    public TypeDescription getReturnSignature() {
         return returnSignature;
     }
 
+    /**
+     * Gives native java method of this method.
+     * @return the java method
+     */
     public Method getMethod() {
         return method;
     }
@@ -95,8 +124,8 @@ public final class MethodDescription implements IMethodDescription {
     private final String name;
     private final int index;
     private final boolean oneway;
-    private final ITypeDescription[] inSignature;
-    private final ITypeDescription[] outSignature;
-    private final ITypeDescription returnSignature;
+    private final TypeDescription[] inSignature;
+    private final TypeDescription[] outSignature;
+    private final TypeDescription returnSignature;
     private final Method method;
 }
diff --git a/ridljar/com/sun/star/lib/uno/typedesc/TypeDescription.java b/ridljar/com/sun/star/lib/uno/typedesc/TypeDescription.java
index b31c040..a3c3bcd 100644
--- a/ridljar/com/sun/star/lib/uno/typedesc/TypeDescription.java
+++ b/ridljar/com/sun/star/lib/uno/typedesc/TypeDescription.java
@@ -23,9 +23,6 @@ import com.sun.star.lib.uno.typeinfo.MemberTypeInfo;
 import com.sun.star.lib.uno.typeinfo.MethodTypeInfo;
 import com.sun.star.lib.uno.typeinfo.ParameterTypeInfo;
 import com.sun.star.lib.uno.typeinfo.TypeInfo;
-import com.sun.star.uno.IFieldDescription;
-import com.sun.star.uno.IMethodDescription;
-import com.sun.star.uno.ITypeDescription;
 import com.sun.star.uno.Type;
 import com.sun.star.uno.TypeClass;
 import java.lang.ref.ReferenceQueue;
@@ -36,11 +33,12 @@ import java.util.ArrayList;
 import java.util.HashMap;
 
 /**
- * Supplies information about UNO types.
+ * Supplies information about UNO types. Allows to examine a type
+ * in detail (e.g. it is used for marshaling/unmarshaling).
  *
  * @since UDK2.0
  */
-public final class TypeDescription implements ITypeDescription {
+public final class TypeDescription {
     public static TypeDescription getTypeDescription(String typeName)
         throws ClassNotFoundException
     {
@@ -63,7 +61,7 @@ public final class TypeDescription implements ITypeDescription {
         throws ClassNotFoundException
     {
         //TODO: synchronize on type?
-        TypeDescription desc = (TypeDescription) type.getTypeDescription();
+        TypeDescription desc = type.getTypeDescription();
         if (desc == null) {
             desc = getTypeDescription(type.getTypeName());
             type.setTypeDescription(desc);
@@ -127,21 +125,38 @@ public final class TypeDescription implements ITypeDescription {
         return getTypeDescription(typeClass) != null;
     }
 
-    // @see ITypeDescription#getSuperType
-    public ITypeDescription getSuperType() {
+    /**
+     * Gets the <code>TypeDescription</code> of the
+     * super, if it exists.
+     * @return  the <code>TypeDescription</code>.
+     */
+    public TypeDescription getSuperType() {
         // Arbitrarily take the first super type:
         return superTypes == null || superTypes.length == 0
             ? null : superTypes[0];
     }
 
-    // @see ITypeDescription#getMethodDescriptions
-    public IMethodDescription[] getMethodDescriptions() {
+    /**
+     * Gets the <code>MethodDescription</code> for every
+     * method, if this type is an interface. Otherwise
+     * returns <code>null</code>.
+     * @return  the <code>MethodDescription[]</code>.
+     */
+    public MethodDescription[] getMethodDescriptions() {
         initMethodDescriptions();
         return methodDescriptions; //TODO: clone?
     }
 
-    // @see ITypeDescription#getMethodDescription(int)
-    public IMethodDescription getMethodDescription(int methodId) {
+    /**
+     * Gets the <code>MethodDescription</code> for the
+     * method with index methodId, if it exists, otherwise
+     * returns <code>null</code>.
+     *
+     * @param methodId the index.
+     *
+     * @return  the <code>MethodDescription</code>.
+     */
+    public MethodDescription getMethodDescription(int methodId) {
         initMethodDescriptions();
         return methodId < 0
             ? null
@@ -153,8 +168,16 @@ public final class TypeDescription implements ITypeDescription {
             : null;
     }
 
-    // @see ITypeDescription#getMethodDescription(String)
-    public IMethodDescription getMethodDescription(String name) {
+    /**
+     * Gets the <code>MethodDescription</code> for the
+     * method with the name <code>name</code>, if it exists,
+     * otherwise returns <code>null</code>.
+     *
+     * @param name the name of the method.
+     *
+     * @return  the <code>MethodDescription</code>.
+     */
+    public MethodDescription getMethodDescription(String name) {
         initMethodDescriptions();
         for (int i = 0; i < superMethodDescriptions.length; ++i) {
             if (superMethodDescriptions[i].getName().equals(name)) {
@@ -169,13 +192,26 @@ public final class TypeDescription implements ITypeDescription {
         return null;
     }
 
-    // @see ITypeDescription#getFieldDescriptions
-    public IFieldDescription[] getFieldDescriptions() {
+    /**
+     * Gets the <code>FieldDescription</code> for every
+     * field, if this type is an interface. Otherwise
+     * returns <code>null</code>.
+     * @return  the <code>FieldDescription[]</code>.
+     */
+    public FieldDescription[] getFieldDescriptions() {
         return fieldDescriptions; //TODO: clone?
     }
 
-    // @see ITypeDescription#getFieldDescription
-    public IFieldDescription getFieldDescription(String name) {
+    /**
+     * Gets the <code>FieldDescription</code> for the
+     * field with the name <code>name</code>, if it exists,
+     * otherwise returns <code>null</code>.
+     *
+     * @param name the name of the field.
+     *
+     * @return  the <code>FieldDescription</code>.
+     */
+    public FieldDescription getFieldDescription(String name) {
         for (int i = 0; i < fieldDescriptions.length; ++i) {
             if (fieldDescriptions[i].getName().equals(name)) {
                 return fieldDescriptions[i];
@@ -185,27 +221,102 @@ public final class TypeDescription implements ITypeDescription {
             ? superTypes[0].getFieldDescription(name) : null;
     }
 
-    // @see ITypeDescription#getTypeClass
+    /**
+     * Gets the IDL <code>TypeClass</code> of the type.
+     * @return  the <code>TypeClass</code>.
+     */
     public TypeClass getTypeClass() {
         return typeClass;
     }
 
-    // @see ITypeDescription#getComponentType
-    public ITypeDescription getComponentType() {
+    /**
+     * Gets the component <code>TypeDescription</code> if
+     * this is an array type, otherwise returns <code>null</code>.
+     * @return the <code>TypeDescription</code>
+     */
+    public TypeDescription getComponentType() {
         return componentType;
     }
 
-    // @see ITypeDescription#getTypeName
+    /**
+     * Gets the (UNO) type name.
+     * <table>
+     *   <caption>Mapping from UNO types to type names</caption>
+     *   <thead>
+     *     <tr><th>UNO type</th><th>type name</th></tr>
+     *   </thead>
+     *   <tbody>
+     *     <tr><td>VOID</td><td><code>"void"</code></td></tr>
+     *     <tr><td>BOOLEAN</td><td><code>"boolean"</code></td></tr>
+     *     <tr><td>CHAR</td><td><code>"char"</code></td></tr>
+     *     <tr><td>BYTE</td><td><code>"byte"</code></td></tr>
+     *     <tr><td>SHORT</td><td><code>"short"</code></td></tr>
+     *     <tr>
+     *       <td>UNSIGNED SHORT</td><td><code>"unsigned short"</code></td>
+     *     </tr>
+     *     <tr><td>LONG</td><td><code>"long"</code></td></tr>
+     *     <tr><td>UNSIGNED LONG</td><td><code>"unsigned long"</code></td></tr>
+     *     <tr><td>HYPER</td><td><code>"hyper"</code></td></tr>
+     *     <tr>
+     *       <td>UNSIGNED HYPER</td><td><code>"unsigned hyper"</code></td>
+     *     </tr>
+     *     <tr><td>FLOAT</td><td><code>"float"</code></td></tr>
+     *     <tr><td>DOUBLE</td><td><code>"double"</code></td></tr>
+     *     <tr><td>STRING</td><td><code>"string"</code></td></tr>
+     *     <tr><td>TYPE</td><td><code>"type"</code></td></tr>
+     *     <tr><td>ANY</td><td><code>"any"</code></td></tr>
+     *     <tr>
+     *       <td>sequence type of base type <var>T</var></td>
+     *       <td><code>"[]"</code> followed by type name for <var>T</var></td>
+     *     </tr>
+     *     <tr>
+     *       <td>enum type named <var>N</var></td>
+     *       <td><var>N</var> (see below)</td>
+     *     </tr>
+     *     <tr>
+     *       <td>struct type named <var>N</var></td>
+     *       <td><var>N</var> (see below)</td>
+     *     </tr>
+     *     <tr>
+     *       <td>exception type named <var>N</var></td>
+     *       <td><var>N</var> (see below)</td>
+     *     </tr>
+     *     <tr>
+     *       <td>interface type named <var>N</var></td>
+     *       <td><var>N</var> (see below)</td>
+     *     </tr>
+     *   </tbody>
+     * </table>
+     * <p>For a UNO type named <var>N</var>, consisting of a sequence of module
+     * names <var>M<sub>1</sub></var>, ..., <var>M<sub>n</sub></var> followed by
+     * a simple name <var>S</var>, the corresponding type name consists of the
+     * same sequence of module names and simple name, with <code>"."</code>
+     * separating the individual elements.</p>
+     * @return the type name.
+     */
     public String getTypeName() {
         return typeName;
     }
 
-    // @see ITypeDescription#getArrayTypeName
+    /**
+     * Gets the (Java) array type name.
+     * <p>The array type name is defined to be the Java class name (as returned
+     * by <code>Class.forName</code>) of the Java array class that corresponds
+     * to the UNO sequence type with this type (the UNO type represented by this
+     * <code>TypeDescription</code> instance) as base type.  For an
+     * <code>TypeDescription</code> instance representing the UNO type VOID,
+     * the array type name is defined to be
+     * <code>"[Ljava.lang.Void;"</code>.</p>
+     * @return the array type name.
+     */
     public String getArrayTypeName() {
         return arrayTypeName;
     }
 
-    // @see ITypeDescription#getZClass
+    /**
+     * Gets the corresponding java class for the type.
+     * @return   the corresponding java class.
+     */
     public Class<?> getZClass() {
         return zClass;
     }
@@ -305,7 +416,7 @@ public final class TypeDescription implements ITypeDescription {
         case TypeClass.SEQUENCE_value:
             {
                 // assert typeName.startsWith("[]");
-                ITypeDescription componentType = getTypeDescription(
+                TypeDescription componentType = getTypeDescription(
                     typeName.substring("[]".length()));
                 // assert zClass.getName().startsWith("[");
                 return new TypeDescription(
@@ -376,7 +487,7 @@ public final class TypeDescription implements ITypeDescription {
     private TypeDescription(
         TypeClass typeClass, String typeName, String arrayTypeName,
         Class<?> zClass, TypeDescription[] superTypes,
-        ITypeDescription componentType)
+        TypeDescription componentType)
     {
         this.typeClass = typeClass;
         this.typeName = typeName;
@@ -398,32 +509,32 @@ public final class TypeDescription implements ITypeDescription {
             return;
         }
         if (superTypes.length == 0) { // com.sun.star.uno.XInterface
-            superMethodDescriptions = new IMethodDescription[0];
-            methodDescriptions = new IMethodDescription[] {
+            superMethodDescriptions = new MethodDescription[0];
+            methodDescriptions = new MethodDescription[] {
                 new MethodDescription(
                     "queryInterface", MethodDescription.ID_QUERY_INTERFACE,
-                    false, new ITypeDescription[] { getDefinitely(Type.TYPE) },
-                    new ITypeDescription[] { null }, getDefinitely(Type.ANY),
+                    false, new TypeDescription[] { getDefinitely(Type.TYPE) },
+                    new TypeDescription[] { null }, getDefinitely(Type.ANY),
                     null),
                 new MethodDescription(
                     "acquire", MethodDescription.ID_ACQUIRE, true,
-                    new ITypeDescription[0], new ITypeDescription[0],
+                    new TypeDescription[0], new TypeDescription[0],
                     getDefinitely(Type.VOID), null),
                 new MethodDescription(
                     "release", MethodDescription.ID_RELEASE, true,
-                    new ITypeDescription[0], new ITypeDescription[0],
+                    new TypeDescription[0], new TypeDescription[0],
                     getDefinitely(Type.VOID), null) };
         } else {
             int methodOffset = 0;
             ArrayList<MethodDescription> superList = new ArrayList<MethodDescription>();
             for (int i = 0; i < superTypes.length; ++i) {
-                IMethodDescription[] ds = superTypes[i].getMethodDescriptions();
+                MethodDescription[] ds = superTypes[i].getMethodDescriptions();
                 for (int j = 0; j < ds.length; ++j) {
                     superList.add(new MethodDescription(ds[j], methodOffset++));
                 }
             }
             superMethodDescriptions = superList.toArray(
-                new IMethodDescription[superList.size()]);
+                new MethodDescription[superList.size()]);
             ArrayList<MethodDescription> directList = new ArrayList<MethodDescription>();
             TypeInfo[] infos = getTypeInfo();
             int infoCount = infos == null ? 0 : infos.length;
@@ -440,13 +551,13 @@ public final class TypeDescription implements ITypeDescription {
                     String getterName = "get" + info.getName();
                     Method getter = findMethod(methods, getterName);
                     Type t = info.getUnoType();
-                    ITypeDescription type = t == null
+                    TypeDescription type = t == null
                         ? getTypeDescription(getter.getReturnType(), info)
                         : getDefinitely(t);
                     directList.add(
                         new MethodDescription(
                             getterName, index++ + methodOffset, false,
-                            new ITypeDescription[0], new ITypeDescription[0],
+                            new TypeDescription[0], new TypeDescription[0],
                             type, getter));
                     if (!info.isReadOnly()) {
                         String setterName = "set" + info.getName();
@@ -454,8 +565,8 @@ public final class TypeDescription implements ITypeDescription {
                         directList.add(
                             new MethodDescription(
                                 setterName, index++ + methodOffset, false,
-                                new ITypeDescription[] { type },
-                                new ITypeDescription[] { null },
+                                new TypeDescription[] { type },
+                                new TypeDescription[] { null },
                                 getDefinitely(Type.VOID), setter));
                     }
                 } else {
@@ -467,9 +578,9 @@ public final class TypeDescription implements ITypeDescription {
                     }
                     Method method = findMethod(methods, info.getName());
                     Class<?>[] params = method.getParameterTypes();
-                    ITypeDescription[] in = new ITypeDescription[params.length];
-                    ITypeDescription[] out
-                        = new ITypeDescription[params.length];
+                    TypeDescription[] in = new TypeDescription[params.length];
+                    TypeDescription[] out
+                        = new TypeDescription[params.length];
                     for (int j = 0; j < params.length; ++j) {
                         ParameterTypeInfo p = null;
                         if (i < infoCount
@@ -479,7 +590,7 @@ public final class TypeDescription implements ITypeDescription {
                             p = (ParameterTypeInfo) infos[i++];
                         }
                         Type pt = p == null ? null : p.getUnoType();
-                        ITypeDescription d = pt == null
+                        TypeDescription d = pt == null
                             ? getTypeDescription(params[j], p)
                             : getDefinitely(pt);
                         if (p == null || p.isIN()) {
@@ -501,7 +612,7 @@ public final class TypeDescription implements ITypeDescription {
                 }
             }
             methodDescriptions = directList.toArray(
-                new IMethodDescription[directList.size()]);
+                new MethodDescription[directList.size()]);
         }
     }
 
@@ -560,7 +671,7 @@ public final class TypeDescription implements ITypeDescription {
                 new TypeDescription[args.size()]);
     }
 
-    private IFieldDescription[] calculateFieldDescriptions(
+    private FieldDescription[] calculateFieldDescriptions(
         TypeDescription[] typeArguments)
     {
         if (typeClass != TypeClass.STRUCT && typeClass != TypeClass.EXCEPTION) {
@@ -568,11 +679,11 @@ public final class TypeDescription implements ITypeDescription {
         }
         TypeInfo[] infos = getTypeInfo();
         int infoCount = infos == null ? 0 : infos.length;
-        ITypeDescription superType = getSuperType();
-        IFieldDescription[] superDescs = superType == null
+        TypeDescription superType = getSuperType();
+        FieldDescription[] superDescs = superType == null
             ? null : superType.getFieldDescriptions();
         int superCount = superDescs == null ? 0 : superDescs.length;
-        IFieldDescription[] descs = new IFieldDescription[
+        FieldDescription[] descs = new FieldDescription[
             superCount + infoCount];
         if (superCount != 0) {
             System.arraycopy(superDescs, 0, descs, 0, superCount);
@@ -626,7 +737,7 @@ public final class TypeDescription implements ITypeDescription {
             "Bad UNOTYPEINFO for " + zClass + ": no method " + name);
     }
 
-    private static ITypeDescription getTypeDescription(
+    private static TypeDescription getTypeDescription(
         Class<?> zClass, TypeInfo typeInfo)
     {
         return getDefinitely(
@@ -700,9 +811,9 @@ public final class TypeDescription implements ITypeDescription {
     private final String arrayTypeName;
     private final Class<?> zClass;
     private final TypeDescription[] superTypes;
-    private final ITypeDescription componentType;
+    private final TypeDescription componentType;
     private final boolean hasTypeArguments;
-    private final IFieldDescription[] fieldDescriptions;
-    private IMethodDescription[] methodDescriptions = null;
-    private IMethodDescription[] superMethodDescriptions;
+    private final FieldDescription[] fieldDescriptions;
+    private MethodDescription[] methodDescriptions = null;
+    private MethodDescription[] superMethodDescriptions;
 }
diff --git a/ridljar/com/sun/star/uno/IFieldDescription.java b/ridljar/com/sun/star/uno/IFieldDescription.java
deleted file mode 100644
index d41c2e5..0000000
--- a/ridljar/com/sun/star/uno/IFieldDescription.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you 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 .
- */
-
-package com.sun.star.uno;
-
-
-import java.lang.reflect.Field;
-
-/**
- * The <code>IFieldDescription</code> describes non
- * method members.
- *
- * @deprecated This interface does not cover all the features supported by the
- * corresponding (unpublished) implementation.  But no client code should need
- * to access this functionality, anyway.
- */
-public interface IFieldDescription extends IMemberDescription {
-    /**
-     * Gives the name of this member.
-     * <p>
-     * @return  the name
-     */
-    ITypeDescription getTypeDescription();
-
-    /**
-     * Gives native java field of this member.
-     * <p>
-     * @return  the java field
-     */
-      Field getField();
-}
diff --git a/ridljar/com/sun/star/uno/IMemberDescription.java b/ridljar/com/sun/star/uno/IMemberDescription.java
deleted file mode 100644
index 041f1e0..0000000
--- a/ridljar/com/sun/star/uno/IMemberDescription.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you 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 .
- */
-
-package com.sun.star.uno;
-
-/**
- * The <code>IMemberDescription</code> is the base interface
- * for the special subset of typedescriptions, which describe
- * members of IDL structs or interfeces.
- *
- * @deprecated This interface does not cover all the features supported by the
- * corresponding (unpublished) implementation.  But no client code should need
- * to access this functionality, anyway.
- */
-public interface IMemberDescription {
-    /**
-     * Gives the name of this member.
-     * @return  the name
-     */
-    String getName();
-
-    /**
-     * Indicates if this member is unsigned. (Not useful for IMethodDescription).
-     * @return  the unsigned state
-     */
-    boolean isUnsigned();
-
-    /**
-     * Indicates if this member is an any.
-     * @return  the any state
-     */
-    boolean isAny();
-
-    /**
-     * Indicates if this member is an interface.
-     * @return  the interface state
-     */
-    boolean isInterface();
-
-    /**
-     * Gives the relative index of this member in the declaring
-     * interface or struct (including superclasses).
-     * @return  the relative index of this member
-     */
-    int getIndex();
-}
diff --git a/ridljar/com/sun/star/uno/IMethodDescription.java b/ridljar/com/sun/star/uno/IMethodDescription.java
deleted file mode 100644
index f58e194..0000000
--- a/ridljar/com/sun/star/uno/IMethodDescription.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you 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 .
- */
-
-package com.sun.star.uno;
-
-
-import java.lang.reflect.Method;
-
-
-/**
- * The <code>IMethodDescription</code> allows to examine a method
- * in detail. It gives a view to java methods from a UNO point.
- *
- * @deprecated This interface does not cover all the features supported by the
- * corresponding (unpublished) implementation.  But no client code should need
- * to access this functionality, anyway.
- */
-public interface IMethodDescription extends IMemberDescription {
-    /**
-     * Indicates if this method is <code>oneWay</code>,
-     * respectively if this method may become executed asynchronously.
-     * @return  true means may execute asynchronously .
-     */
-    boolean isOneway();
-
-    /**
-     * Indicates if this method is const.
-     * @return true means it is const.
-     */
-    boolean isConst();
-
-    /**
-     * Gives any array of <code>ITypeDescription</code> of
-     * the [in] parameters.
-     * @return  the in parameters
-     */
-    ITypeDescription[] getInSignature();
-
-    /**
-     * Gives any array of <code>ITypeDescription</code> of
-     * the [out] parameters.
-     * @return  the out parameters
-     */
-    ITypeDescription[] getOutSignature();
-
-    /**
-     * Gives the <code>ITypeDescription</code> of
-     * the return type.
-     * @return  the return type <code>ITypeDescription</code>
-     */
-    ITypeDescription getReturnSignature();
-
-    /**
-     * Gives native java method of this method.
-     * @return  the java methodd
-     */
-    Method getMethod();
-}
diff --git a/ridljar/com/sun/star/uno/ITypeDescription.java b/ridljar/com/sun/star/uno/ITypeDescription.java
deleted file mode 100644
index 1495c54..0000000
--- a/ridljar/com/sun/star/uno/ITypeDescription.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you 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 .
- */
-
-package com.sun.star.uno;
-
-/**
- * The <code>ITypeDescription</code> allows to examine a type
- * in detail (e.g. it is used for marshaling/unmarshaling).
- * @deprecated This interface does not cover all the features supported by the
- * corresponding (unpublished) implementation.  But no client code should need
- * to access this functionality, anyway.
- */
-public interface ITypeDescription {
-    /**
-     * Gets the <code>ITypeDescription</code> of the
-     * super, if it exists.
-     * @return  the <code>ITypeDescription</code>.
-     */
-    ITypeDescription getSuperType();
-
-    /**
-     * Gets the <code>IMethodDescription</code> for every
-     * method, if this type is an interface. Otherwise
-     * returns <code>null</code>.
-     * @return  the <code>IMethodDescription[]</code>.
-     */
-    IMethodDescription []getMethodDescriptions();
-
-    /**
-     * Gets the <code>IMethodDescription</code> for the
-     * method with index methodId, if it exists, otherwise
-     * returns <code>null</code>.
-     *
-     * @param methodId the index.
-     *
-     * @return  the <code>IMethodDescription</code>.
-     */
-    IMethodDescription getMethodDescription(int methodId);
-
-    /**
-     * Gets the <code>IMethodDescription</code> for the
-     * method with the name <code>name</code>, if it exists,
-     * otherwise returns <code>null</code>.
-     *
-     * @param name the name of the method.
-     *
-     * @return  the <code>IMethodDescription</code>.
-     */
-    IMethodDescription getMethodDescription(String name);
-
-    /**
-     * Gets the <code>IFieldDescription</code> for every
-     * field, if this type is an interface. Otherwise
-     * returns <code>null</code>.
-     * @return  the <code>IFieldDescription[]</code>.
-     */
-      IFieldDescription []getFieldDescriptions();
-
-    /**
-     * Gets the <code>IFieldDescription</code> for the
-     * field with the name <code>name</code>, if it exists,
-     * otherwise returns <code>null</code>.
-     *
-     * @param name the name of the field.
-     *
-     * @return  the <code>IFieldDescription</code>.
-     */
-      IFieldDescription getFieldDescription(String name);
-
-    /**
-     * Gets the IDL <code>TypeClass</code> of the type.
-     * @return  the <code>TypeClass</code>.
-     */
-    TypeClass getTypeClass();
-
-    /**
-     * Gets the component <code>ITypeDescription</code> if
-     * this is an array type, otherwise returns <code>null</code>.
-     * @return the <code>ITypeDescription</code>
-     */
-    ITypeDescription getComponentType();
-
-    /**
-     * Gets the (UNO) type name.
-     * <table>
-     *   <caption>Mapping from UNO types to type names</caption>
-     *   <thead>
-     *     <tr><th>UNO type</th><th>type name</th></tr>
-     *   </thead>
-     *   <tbody>
-     *     <tr><td>VOID</td><td><code>"void"</code></td></tr>
-     *     <tr><td>BOOLEAN</td><td><code>"boolean"</code></td></tr>
-     *     <tr><td>CHAR</td><td><code>"char"</code></td></tr>
-     *     <tr><td>BYTE</td><td><code>"byte"</code></td></tr>
-     *     <tr><td>SHORT</td><td><code>"short"</code></td></tr>
-     *     <tr>
-     *       <td>UNSIGNED SHORT</td><td><code>"unsigned short"</code></td>
-     *     </tr>
-     *     <tr><td>LONG</td><td><code>"long"</code></td></tr>
-     *     <tr><td>UNSIGNED LONG</td><td><code>"unsigned long"</code></td></tr>
-     *     <tr><td>HYPER</td><td><code>"hyper"</code></td></tr>
-     *     <tr>
-     *       <td>UNSIGNED HYPER</td><td><code>"unsigned hyper"</code></td>
-     *     </tr>
-     *     <tr><td>FLOAT</td><td><code>"float"</code></td></tr>
-     *     <tr><td>DOUBLE</td><td><code>"double"</code></td></tr>
-     *     <tr><td>STRING</td><td><code>"string"</code></td></tr>
-     *     <tr><td>TYPE</td><td><code>"type"</code></td></tr>
-     *     <tr><td>ANY</td><td><code>"any"</code></td></tr>
-     *     <tr>
-     *       <td>sequence type of base type <var>T</var></td>
-     *       <td><code>"[]"</code> followed by type name for <var>T</var></td>
-     *     </tr>
-     *     <tr>
-     *       <td>enum type named <var>N</var></td>
-     *       <td><var>N</var> (see below)</td>
-     *     </tr>
-     *     <tr>
-     *       <td>struct type named <var>N</var></td>
-     *       <td><var>N</var> (see below)</td>
-     *     </tr>
-     *     <tr>
-     *       <td>exception type named <var>N</var></td>
-     *       <td><var>N</var> (see below)</td>
-     *     </tr>
-     *     <tr>
-     *       <td>interface type named <var>N</var></td>
-     *       <td><var>N</var> (see below)</td>
-     *     </tr>
-     *   </tbody>
-     * </table>
-     * <p>For a UNO type named <var>N</var>, consisting of a sequence of module
-     * names <var>M<sub>1</sub></var>, ..., <var>M<sub>n</sub></var> followed by
-     * a simple name <var>S</var>, the corresponding type name consists of the
-     * same sequence of module names and simple name, with <code>"."</code>
-     * separating the individual elements.</p>
-     * @return the type name.
-     */
-    String getTypeName();
-
-    /**
-     * Gets the (Java) array type name.
-     * <p>The array type name is defined to be the Java class name (as returned
-     * by <code>Class.forName</code>) of the Java array class that corresponds
-     * to the UNO sequence type with this type (the UNO type represented by this
-     * <code>ITypeDescription</code> instance) as base type.  For an
-     * <code>ITypeDescription</code> instance representing the UNO type VOID,
-     * the array type name is defined to be
-     * <code>"[Ljava.lang.Void;"</code>.</p>
-     * @return the array type name.
-     */
-    String getArrayTypeName();
-
-    /**
-     * Gets the corresponding java class for the type.
-     * @return   the corresponding java class.
-     */
-    Class<?> getZClass();
-}
diff --git a/ridljar/com/sun/star/uno/Type.java b/ridljar/com/sun/star/uno/Type.java
index 018a606..355d3f8 100644
--- a/ridljar/com/sun/star/uno/Type.java
+++ b/ridljar/com/sun/star/uno/Type.java
@@ -20,6 +20,8 @@ package com.sun.star.uno;
 
 import java.util.HashMap;
 
+import com.sun.star.lib.uno.typedesc.TypeDescription;
+
 /**
  * Represents the UNO built-in type <code>TYPE</code>.
  *
@@ -35,7 +37,7 @@ import java.util.HashMap;
  * will never be <code>null</code>.  A <code>Type</code> may have an additional
  * "z class" (a <code>java.lang.Class</code>), giving a Java class type that
  * corresponds to the UNO type.  Also, a <code>Type</code> can cache a type
- * description (a <code>com.sun.star.uno.ITypeDescription</code>), which can be
+ * description (a <code>com.sun.star.uno.typedesc.TypeDescription</code>), which can be
  * computed and set by <code>TypeDescription.getTypeDescription</code>.
  */
 public class Type {
@@ -272,10 +274,11 @@ public class Type {
     /**
      * Constructs a new <code>Type</code> from the given type description.
      *
+     * @internal
      * @param typeDescription a type description.  Must not be
      *     <code>null</code>.
      */
-    public Type(ITypeDescription typeDescription) {
+    public Type(TypeDescription typeDescription) {
         _typeName         = typeDescription.getTypeName();
         _typeClass        = typeDescription.getTypeClass();
         _iTypeDescription = typeDescription;
@@ -367,18 +370,20 @@ public class Type {
     /**
      * Gives the type description of this type.
      *
+     * @internal
      * @return the type description; may be <code>null</code>
      */
-    public ITypeDescription getTypeDescription() {
+    public TypeDescription getTypeDescription() {
         return _iTypeDescription;
     }
 
     /**
      * Sets the type description for this type.
      *
+     * @internal
      * @param typeDescription the type description
      */
-    public void setTypeDescription(ITypeDescription typeDescription) {
+    public void setTypeDescription(TypeDescription typeDescription) {
         _iTypeDescription = typeDescription;
     }
 
@@ -683,9 +688,9 @@ public class Type {
         return typeClass.getValue() < __typeClassToTypeName.length;
     }
 
-    protected TypeClass _typeClass; // TODO should be final
-    protected String _typeName; // TODO should be final
+    private TypeClass _typeClass; // TODO should be final
+    private String _typeName; // TODO should be final
 
-    protected Class<?> _class;
-    protected ITypeDescription _iTypeDescription;
+    private Class<?> _class;
+    private TypeDescription _iTypeDescription;
 }
diff --git a/ridljar/com/sun/star/uno/UnoRuntime.java b/ridljar/com/sun/star/uno/UnoRuntime.java
index 114753d..4bedc27 100644
--- a/ridljar/com/sun/star/uno/UnoRuntime.java
+++ b/ridljar/com/sun/star/uno/UnoRuntime.java
@@ -23,6 +23,8 @@ import java.lang.reflect.Array;
 import java.lang.reflect.Constructor;
 import java.util.ArrayList;
 import java.util.Iterator;
+
+import com.sun.star.lib.uno.typedesc.FieldDescription;
 import com.sun.star.lib.uno.typedesc.TypeDescription;
 import com.sun.star.lib.util.WeakMap;
 
@@ -243,7 +245,7 @@ public class UnoRuntime {
             return v1 == v2;
         case TypeClass.STRUCT_value:
         case TypeClass.EXCEPTION_value:
-            IFieldDescription[] fs;
+            FieldDescription[] fs;
             try {
                 fs = TypeDescription.getTypeDescription(t).
                     getFieldDescriptions();
diff --git a/ridljar/test/com/sun/star/lib/uno/typedesc/TypeDescription_Test.java b/ridljar/test/com/sun/star/lib/uno/typedesc/TypeDescription_Test.java
index 1caf962..13271dc 100644
--- a/ridljar/test/com/sun/star/lib/uno/typedesc/TypeDescription_Test.java
+++ b/ridljar/test/com/sun/star/lib/uno/typedesc/TypeDescription_Test.java
@@ -21,9 +21,6 @@ package com.sun.star.lib.uno.typedesc;
 import com.sun.star.lib.uno.typeinfo.MethodTypeInfo;
 import com.sun.star.lib.uno.typeinfo.TypeInfo;
 import com.sun.star.uno.Any;
-import com.sun.star.uno.IFieldDescription;
-import com.sun.star.uno.IMethodDescription;
-import com.sun.star.uno.ITypeDescription;
 import com.sun.star.uno.Type;
 import com.sun.star.uno.TypeClass;
 import com.sun.star.uno.XInterface;
@@ -33,31 +30,31 @@ import static org.junit.Assert.*;
 
 public final class TypeDescription_Test {
     @Test public void test() throws Exception {
-        ITypeDescription voidTD = TypeDescription.getTypeDescription(
+        TypeDescription voidTD = TypeDescription.getTypeDescription(
             void.class);
-        ITypeDescription stringTD = TypeDescription.getTypeDescription(
+        TypeDescription stringTD = TypeDescription.getTypeDescription(
             String.class);
-        ITypeDescription typeTD = TypeDescription.getTypeDescription(
+        TypeDescription typeTD = TypeDescription.getTypeDescription(
             Type.class);
-        ITypeDescription anyTD = TypeDescription.getTypeDescription(Any.class);
-        ITypeDescription interfaceTD = TypeDescription.getTypeDescription(
+        TypeDescription anyTD = TypeDescription.getTypeDescription(Any.class);
+        TypeDescription interfaceTD = TypeDescription.getTypeDescription(
             XInterface.class);
 
         MethodSignature sigBuildinSyncTypeToAny = new MethodSignature(
-            true, false, new ITypeDescription[] { typeTD },
-            new ITypeDescription[1], anyTD);
+            true, false, new TypeDescription[] { typeTD },
+            new TypeDescription[1], anyTD);
         MethodSignature sigBuildinAsyncToVoid = new MethodSignature(
-            true, true, new ITypeDescription[0], new ITypeDescription[0],
+            true, true, new TypeDescription[0], new TypeDescription[0],
             voidTD);
         MethodSignature sigAddonSyncStringToVoid = new MethodSignature(
-            false, false, new ITypeDescription[] { stringTD },
-            new ITypeDescription[1], voidTD);
+            false, false, new TypeDescription[] { stringTD },
+            new TypeDescription[1], voidTD);
         MethodSignature sigAddonSyncStringInterfaceToVoid = new MethodSignature(
-            false, false, new ITypeDescription[] { stringTD, interfaceTD },
-            new ITypeDescription[2], voidTD);
+            false, false, new TypeDescription[] { stringTD, interfaceTD },
+            new TypeDescription[2], voidTD);
         MethodSignature sigAddonSyncStringToInterface = new MethodSignature(
-            false, false, new ITypeDescription[] { stringTD },
-            new ITypeDescription[1], interfaceTD);
+            false, false, new TypeDescription[] { stringTD },
+            new TypeDescription[1], interfaceTD);
 
         TypeSignature emptyTypeSig = new TypeSignature(
             null, new String[0], null, new String[0], null);
@@ -153,8 +150,8 @@ public final class TypeDescription_Test {
 
     private final class MethodSignature {
         public MethodSignature(
-            boolean buildIn, boolean oneWay, ITypeDescription[] inParameters,
-            ITypeDescription[] outParameters, ITypeDescription returnValue)
+            boolean buildIn, boolean oneWay, TypeDescription[] inParameters,
+            TypeDescription[] outParameters, TypeDescription returnValue)
         {
             this.buildIn = buildIn;
             this.oneWay = oneWay;
@@ -164,20 +161,20 @@ public final class TypeDescription_Test {
         }
 
         public void test(String prefix, int index,
-                         IMethodDescription description) {
+                         MethodDescription description) {
             assertEquals(prefix + "; getIndex", index, description.getIndex());
             assertEquals(
                 prefix + "; getMethod", buildIn,
                 description.getMethod() == null);
             assertEquals(prefix + "; isOneway", oneWay, description.isOneway());
-            ITypeDescription[] in = description.getInSignature();
+            TypeDescription[] in = description.getInSignature();
             assertEquals(
                 prefix + "; getInSignature", inParameters.length, in.length);
             for (int i = 0; i < in.length; ++i) {
                 assertEquals(
                     prefix + "; getInSignature " + i, inParameters[i], in[i]);
             }
-            ITypeDescription[] out = description.getOutSignature();
+            TypeDescription[] out = description.getOutSignature();
             assertEquals(
                 prefix + "; getOutSignature", outParameters.length, out.length);
             for (int i = 0; i < out.length; ++i) {
@@ -194,9 +191,9 @@ public final class TypeDescription_Test {
 
         private final boolean buildIn;
         private final boolean oneWay;
-        private final ITypeDescription[] inParameters;
-        private final ITypeDescription[] outParameters;
-        private final ITypeDescription returnValue;
+        private final TypeDescription[] inParameters;
+        private final TypeDescription[] outParameters;
+        private final TypeDescription returnValue;
     }
 
     private final class TypeSignature {
@@ -216,7 +213,7 @@ public final class TypeDescription_Test {
         }
 
         public void test(String prefix, Object[] data,
-                         ITypeDescription description) throws Exception {
+                         TypeDescription description) throws Exception {
             assertEquals(
                 prefix + "; getTypeName", data[0], description.getTypeName());
             assertEquals(
@@ -233,7 +230,7 @@ public final class TypeDescription_Test {
             assertNull(
                 prefix + "; getComponentType", description.getComponentType());
 
-            IMethodDescription[] mds = description.getMethodDescriptions();
+            MethodDescription[] mds = description.getMethodDescriptions();
             assertTrue(
                 prefix + "; getMethodDescriptions",
                 mds == null
@@ -247,7 +244,7 @@ public final class TypeDescription_Test {
                 }
             }
             for (int i = 0; i < methodNames.length; ++i) {
-                IMethodDescription md = description.getMethodDescription(
+                MethodDescription md = description.getMethodDescription(
                     i + methodOffset);
                 assertNotNull(
                     prefix + "; getMethodDescription " + (i + methodOffset),
@@ -257,7 +254,7 @@ public final class TypeDescription_Test {
                     i + methodOffset, md);
             }
             for (int i = 0; i < methodNames.length; ++i) {
-                IMethodDescription md = description.getMethodDescription(
+                MethodDescription md = description.getMethodDescription(
                     methodNames[i]);
                 assertNotNull(
                     prefix + "; getMethodDescription " + methodNames[i], md);
@@ -266,7 +263,7 @@ public final class TypeDescription_Test {
                     i + methodOffset, md);
             }
 
-            IFieldDescription[] fds = description.getFieldDescriptions();
+            FieldDescription[] fds = description.getFieldDescriptions();
             assertTrue(
                 prefix + "; getFieldDescriptions",
                 fds == null
@@ -281,7 +278,7 @@ public final class TypeDescription_Test {
                 }
             }
 
-            ITypeDescription supert = description.getSuperType();
+            TypeDescription supert = description.getSuperType();
             assertEquals(
                 prefix + "; getSuperType", data.length < 6, supert == null);
             if (supert != null && data[5] != null) {


More information about the Libreoffice-commits mailing list