commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mt...@apache.org
Subject svn commit: r790884 - in /commons/sandbox/runtime/trunk/src: main/java/org/apache/commons/runtime/ main/native/ main/native/include/ main/native/shared/ main/native/test/ test/org/apache/commons/runtime/
Date Fri, 03 Jul 2009 12:22:08 GMT
Author: mturk
Date: Fri Jul  3 12:22:08 2009
New Revision: 790884

URL: http://svn.apache.org/viewvc?rev=790884&view=rev
Log:
Remove ByReferencePointer. API not suitable

Removed:
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/ByReferencePointer.java
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/ByReferencePointer32.java
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/ByReferencePointer64.java
    commons/sandbox/runtime/trunk/src/main/native/shared/refptr.c
Modified:
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/ByReference.java
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/NativePointer.java
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Pointer.java
    commons/sandbox/runtime/trunk/src/main/native/Makefile.in
    commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in
    commons/sandbox/runtime/trunk/src/main/native/include/acr_pointer.h
    commons/sandbox/runtime/trunk/src/main/native/shared/clazz.c
    commons/sandbox/runtime/trunk/src/main/native/shared/memory.c
    commons/sandbox/runtime/trunk/src/main/native/shared/pointer.c
    commons/sandbox/runtime/trunk/src/main/native/test/testcase.c
    commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestMemory.java
    commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestPrivate.java

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/ByReference.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/ByReference.java?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/ByReference.java
(original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/ByReference.java
Fri Jul  3 12:22:08 2009
@@ -24,8 +24,8 @@
  * </p>
  * @since Runtime 1.0
  */
-@Retention(RetentionPolicy.RUNTIME)
-@Target(ElementType.TYPE)
+@Retention(RetentionPolicy.SOURCE)
+@Target(ElementType.PARAMETER)
 public @interface ByReference
 {
 

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/NativePointer.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/NativePointer.java?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/NativePointer.java
(original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/NativePointer.java
Fri Jul  3 12:22:08 2009
@@ -106,17 +106,6 @@
     public abstract boolean isNull();
 
     /**
-     * Check if the pointer is to be used by reference.
-     * @return true if the pointer has {@code ByReference} annotation.
-     * @see ByReference
-     */
-    public final boolean isByReference()
-    {
-        return getClass().isAnnotationPresent(ByReference.class);
-    }
-
-
-    /**
      * Compares this {@code Pointer} to the specified object.
      *
      * @param other a {@code Pointer}

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Pointer.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Pointer.java?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Pointer.java (original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Pointer.java Fri
Jul  3 12:22:08 2009
@@ -60,13 +60,6 @@
     public boolean isNull();
 
     /**
-     * Check if the pointer is to be used by reference
-     * @return true if the pointer has {@code ByReference} annotation.
-     * @see ByReference
-     */
-    public boolean isByReference();
-
-    /**
      * Compares this {@code Pointer} to the specified object.
      *
      * @param other a {@code Pointer}

Modified: commons/sandbox/runtime/trunk/src/main/native/Makefile.in
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/Makefile.in?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/Makefile.in (original)
+++ commons/sandbox/runtime/trunk/src/main/native/Makefile.in Fri Jul  3 12:22:08 2009
@@ -85,7 +85,6 @@
 	$(SRCDIR)/shared/native.$(OBJ) \
 	$(SRCDIR)/shared/nbb.$(OBJ) \
 	$(SRCDIR)/shared/pointer.$(OBJ) \
-	$(SRCDIR)/shared/refptr.$(OBJ) \
 	$(SRCDIR)/shared/object.$(OBJ) \
 	$(SRCDIR)/shared/string.$(OBJ) \
 	$(SRCDIR)/shared/tables.$(OBJ) \

Modified: commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in (original)
+++ commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in Fri Jul  3 12:22:08 2009
@@ -79,7 +79,6 @@
 	$(SRCDIR)/shared/native.$(OBJ) \
 	$(SRCDIR)/shared/nbb.$(OBJ) \
 	$(SRCDIR)/shared/pointer.$(OBJ) \
-	$(SRCDIR)/shared/refptr.$(OBJ) \
 	$(SRCDIR)/shared/object.$(OBJ) \
 	$(SRCDIR)/shared/string.$(OBJ) \
 	$(SRCDIR)/shared/tables.$(OBJ) \

Modified: commons/sandbox/runtime/trunk/src/main/native/include/acr_pointer.h
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/include/acr_pointer.h?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/include/acr_pointer.h (original)
+++ commons/sandbox/runtime/trunk/src/main/native/include/acr_pointer.h Fri Jul  3 12:22:08
2009
@@ -91,7 +91,19 @@
  * @return Callback pointer.
  */
 ACR_DECLARE(acr_pointer_cleanup_fn_t *) ACR_PointerCallbackGet(JNIEnv *env,
- 															   jobject ptr);
+                                                                jobject ptr);
+
+/**
+ * Attach the native pointer to the existing (empty) Pointer object.
+ * @param env Current JNI environment
+ * @param ptr Java Pointer object use.
+ * @param val Value to set.
+ * @param len length of the pointer.
+ * @param cb callback function to use on Pointer.finalize()
+ * @return ACR error code on failure.
+ */
+ACR_DECLARE(int) ACR_PointerAttach(JNIEnv *env, jobject ptr, void *p,
+                                   size_t len, acr_pointer_cleanup_fn_t *cb);
 
 /**
  * Create new DirectBuffer class instance
@@ -110,23 +122,6 @@
  */
 ACR_DECLARE(jobjectArray) ACR_NewDirectBufferArray(JNIEnv *env, jsize len);
 
-/**
- * Create new ByReferencePointer class instance
- * @param env Current JNI environment
- * @param p Native pointer to wrap into Pointer class
- * @param len Length of the pointer.
- * @param cb callback function to use on Pointer.finalize()
- */
-ACR_DECLARE(jobject) ACR_NewByReferencePointer(JNIEnv *env, void *p, size_t len,
-                                               acr_pointer_cleanup_fn_t *cb);
-
-/**
- * Create new ByReferencePointer array
- * @param env Current JNI environment
- * @param len Size of the new ByReferencePointer array
- */
-ACR_DECLARE(jobjectArray) ACR_NewByReferencePointerArray(JNIEnv *env,
- 														 jsize len);
 
 #ifdef __cplusplus
 }

Modified: commons/sandbox/runtime/trunk/src/main/native/shared/clazz.c
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/shared/clazz.c?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/shared/clazz.c (original)
+++ commons/sandbox/runtime/trunk/src/main/native/shared/clazz.c Fri Jul  3 12:22:08 2009
@@ -372,7 +372,6 @@
 /* Forward class loading declarations */
 ACR_CLASS_LDEC(Descriptor);
 ACR_CLASS_LDEC(NativePointer);
-ACR_CLASS_LDEC(ByReferencePointer);
 ACR_CLASS_LDEC(DirectBuffer);
 ACR_CLASS_LDEC(MbString);
 ACR_CLASS_LDEC(Group);
@@ -384,7 +383,6 @@
 
     ACR_CLASS_LRUN(Descriptor);
     ACR_CLASS_LRUN(NativePointer);
-    ACR_CLASS_LRUN(ByReferencePointer);
     ACR_CLASS_LRUN(DirectBuffer);
     ACR_CLASS_LRUN(MbString);
     ACR_CLASS_LRUN(Group);
@@ -402,7 +400,6 @@
 
     ACR_CLASS_URUN(Descriptor);
     ACR_CLASS_URUN(NativePointer);
-    ACR_CLASS_URUN(ByReferencePointer);
     ACR_CLASS_URUN(DirectBuffer);
     ACR_CLASS_URUN(MbString);
     ACR_CLASS_URUN(Group);

Modified: commons/sandbox/runtime/trunk/src/main/native/shared/memory.c
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/shared/memory.c?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/shared/memory.c (original)
+++ commons/sandbox/runtime/trunk/src/main/native/shared/memory.c Fri Jul  3 12:22:08 2009
@@ -251,7 +251,7 @@
 ACR_JNI_EXPORT_DECLARE(jobject, Memory, nullp0)(ACR_JNISTDARGS)
 {
     UNREFERENCED_O;
-    return ACR_NewByReferencePointer(_E, NULL, 0, memory_pointer_cleanup);
+    return ACR_NewPointer(_E, NULL, 0, memory_pointer_cleanup);
 }
 
 ACR_JNI_EXPORT_DECLARE(jobject, Memory, malloc)(ACR_JNISTDARGS, jlong siz)

Modified: commons/sandbox/runtime/trunk/src/main/native/shared/pointer.c
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/shared/pointer.c?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/shared/pointer.c (original)
+++ commons/sandbox/runtime/trunk/src/main/native/shared/pointer.c Fri Jul  3 12:22:08 2009
@@ -302,6 +302,27 @@
     }
 }
 
+ACR_DECLARE(int) ACR_PointerAttach(ACR_JNISTDARGS, void *p, size_t len,
+                                   acr_pointer_cleanup_fn_t *cb)
+{
+    if (_clazzn.i && J4MID(0000) && _O) {
+        if ((*_E)->MonitorEnter(_E, _O)) {
+            /* Object locking failed */
+            return ACR_ENOLOCK;
+        }
+
+        SET_IFIELD_P(0000, _O, p);
+        SET_IFIELD_P(0001, _O, cb);
+        SET_IFIELD_P(0002, _O, len);
+
+        (*_E)->MonitorExit(_E, _O);
+        return ACR_SUCCESS;
+    }
+    else {
+        return ACR_ECLASSNOTFOUND;
+    }
+}
+
 ACR_DECLARE(acr_pointer_cleanup_fn_t *) ACR_PointerCallbackGet(ACR_JNISTDARGS)
 {
     if (_clazzn.i && J4MID(0000) && _O) {

Modified: commons/sandbox/runtime/trunk/src/main/native/test/testcase.c
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/test/testcase.c?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/test/testcase.c (original)
+++ commons/sandbox/runtime/trunk/src/main/native/test/testcase.c Fri Jul  3 12:22:08 2009
@@ -227,13 +227,6 @@
     return 0;
 }
 
-static int refcallback(void *p, size_t s)
-{
-    fprintf(stderr, "[native] ByReferencePointer callback called: %p - %d\n", p, s);
-    fflush(stderr);
-    return 0;
-}
-
 ACR_JNI_EXPORT_DECLARE(jobject, TestPrivate, test017)(ACR_JNISTDARGS, jint d)
 {
 
@@ -246,12 +239,6 @@
     return  ACR_NewDirectBuffer(_E, I2P(d, void *), 0, dbbcallback);
 }
 
-ACR_JNI_EXPORT_DECLARE(jobject, TestPrivate, test039)(ACR_JNISTDARGS, jint d)
-{
-
-    return  ACR_NewByReferencePointer(_E, I2P(d, void *), 0, refcallback);
-}
-
 ACR_JNI_EXPORT_DECLARE(jint, TestPrivate, test018)(ACR_JNISTDARGS, jobject p)
 {
 

Modified: commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestMemory.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestMemory.java?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestMemory.java (original)
+++ commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestMemory.java Fri
Jul  3 12:22:08 2009
@@ -123,14 +123,6 @@
         p.free();
     }
 
-    public void testByReference()
-        throws Throwable
-    {
-        Pointer p = Memory.malloc();
-        assertNotNull("Pointer", p);
-		assertTrue("ByReference", p.isByReference());
-    }
-
     public void testExecutableMalloc()
         throws Throwable
     {

Modified: commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestPrivate.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestPrivate.java?rev=790884&r1=790883&r2=790884&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestPrivate.java (original)
+++ commons/sandbox/runtime/trunk/src/test/org/apache/commons/runtime/TestPrivate.java Fri
Jul  3 12:22:08 2009
@@ -64,7 +64,6 @@
     private static native int   test016(int d);
     private static native Pointer test017(int d);
     private static native DirectBuffer test038(int d);
-    private static native Pointer test039(int d);
     private static native int   test018(Pointer p);
     private static native int   test019(Pointer p);
 
@@ -409,25 +408,6 @@
         b.free();
     }
 
-    public void testByrefNativePtrGet()
-        throws Throwable
-    {
-        Pointer b = test039(0xcafebabe);
-        assertNotNull("ByRefPointer", b);
-        int r = test019(b);
-        assertEquals("Result ", 1, r);
-        b.free();
-        int c = test019(b);
-        // Second call must return NULL
-        assertEquals("Result ", 0, c);
-
-        b = null;
-        System.gc();
-        // This should be enough for a gc
-        // from Pointer.finalize()
-        Thread.sleep(200);
-    }
-
     public void testDescClassLoad()
         throws Exception
     {



Mime
View raw message