You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by va...@apache.org on 2010/03/23 23:01:25 UTC
svn commit: r926810 - in /lucene/pylucene/trunk: Makefile jcc/CHANGES
jcc/_jcc/java/lang/Class.cpp jcc/_jcc/java/lang/Class.h
jcc/helpers/mingw32.py jcc/jcc/python.py
samples/LuceneInAction/lia/indexing/LockTest.py
Author: vajda
Date: Tue Mar 23 22:01:25 2010
New Revision: 926810
URL: http://svn.apache.org/viewvc?rev=926810&view=rev
Log:
- moved to new lucene trunk
- fixed bug in LockTest (failing because IndexWriter.unlock changed)
- fixed bug with not inheriting type parameters to inner parameterized classes
Modified:
lucene/pylucene/trunk/Makefile
lucene/pylucene/trunk/jcc/CHANGES
lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.cpp
lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.h
lucene/pylucene/trunk/jcc/helpers/mingw32.py
lucene/pylucene/trunk/jcc/jcc/python.py
lucene/pylucene/trunk/samples/LuceneInAction/lia/indexing/LockTest.py
Modified: lucene/pylucene/trunk/Makefile
URL: http://svn.apache.org/viewvc/lucene/pylucene/trunk/Makefile?rev=926810&r1=926809&r2=926810&view=diff
==============================================================================
--- lucene/pylucene/trunk/Makefile (original)
+++ lucene/pylucene/trunk/Makefile Tue Mar 23 22:01:25 2010
@@ -14,10 +14,10 @@
# site-packages directory.
#
-VERSION=3.0.1-1
+VERSION=3.1-0
LUCENE_SVN_VER=HEAD
-LUCENE_VER=3.0.1
-LUCENE_SVN=http://svn.apache.org/repos/asf/lucene/java/tags/lucene_3_0_1
+LUCENE_VER=3.1
+LUCENE_SVN=http://svn.apache.org/repos/asf/lucene/dev/trunk/lucene
PYLUCENE:=$(shell pwd)
LUCENE=lucene-java-$(LUCENE_VER)
@@ -137,7 +137,6 @@ endif
DEFINES=-DPYLUCENE_VER="\"$(VERSION)\"" -DLUCENE_VER="\"$(LUCENE_VER)\""
LUCENE_JAR=$(LUCENE)/build/lucene-core-$(LUCENE_VER).jar
-SNOWBALL_JAR=$(LUCENE)/build/contrib/snowball/lucene-snowball-$(LUCENE_VER).jar
ANALYZERS_JAR=$(LUCENE)/build/contrib/analyzers/common/lucene-analyzers-$(LUCENE_VER).jar
HIGHLIGHTER_JAR=$(LUCENE)/build/contrib/highlighter/lucene-highlighter-$(LUCENE_VER).jar
MEMORY_JAR=$(LUCENE)/build/contrib/memory/lucene-memory-$(LUCENE_VER).jar
@@ -171,9 +170,6 @@ lucene:
$(LUCENE_JAR): $(LUCENE)
cd $(LUCENE); $(ANT) -Dversion=$(LUCENE_VER)
-$(SNOWBALL_JAR): $(LUCENE_JAR)
- cd $(LUCENE)/contrib/snowball; $(ANT) -Dversion=$(LUCENE_VER)
-
$(ANALYZERS_JAR): $(LUCENE_JAR)
cd $(LUCENE)/contrib/analyzers/common; $(ANT) -Dversion=$(LUCENE_VER)
@@ -192,7 +188,7 @@ $(QUERIES_JAR): $(LUCENE_JAR)
$(EXTENSIONS_JAR): $(LUCENE_JAR)
$(ANT) -f extensions.xml -Dlucene.dir=$(LUCENE)
-JARS=$(LUCENE_JAR) $(SNOWBALL_JAR) $(ANALYZERS_JAR) \
+JARS=$(LUCENE_JAR) $(ANALYZERS_JAR) \
$(REGEX_JAR) $(MEMORY_JAR) $(HIGHLIGHTER_JAR) $(QUERIES_JAR) \
$(EXTENSIONS_JAR)
Modified: lucene/pylucene/trunk/jcc/CHANGES
URL: http://svn.apache.org/viewvc/lucene/pylucene/trunk/jcc/CHANGES?rev=926810&r1=926809&r2=926810&view=diff
==============================================================================
--- lucene/pylucene/trunk/jcc/CHANGES (original)
+++ lucene/pylucene/trunk/jcc/CHANGES Tue Mar 23 22:01:25 2010
@@ -7,6 +7,7 @@ Version 2.5 ->
- updated MANIFEST.in as sdist started creating incomplete source archives
- improved support for building on Windows with mingw32 (Bill Janssen)
- added support for --find-jvm-dll jvm.dll (Bill Janssen)
+ - fixed bug with not inheriting type parameters to inner parameterized classes
-
Version 2.4 -> 2.5
Modified: lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.cpp
URL: http://svn.apache.org/viewvc/lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.cpp?rev=926810&r1=926809&r2=926810&view=diff
==============================================================================
--- lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.cpp (original)
+++ lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.cpp Tue Mar 23 22:01:25 2010
@@ -46,6 +46,8 @@ namespace java {
mid_isAssignableFrom,
mid_getComponentType,
mid_getSuperclass,
+ mid_getDeclaringClass,
+ mid_getEnclosingClass,
mid_getInterfaces,
mid_getName,
mid_getModifiers,
@@ -110,6 +112,12 @@ namespace java {
_mids[mid_getSuperclass] =
env->getMethodID(cls, "getSuperclass",
"()Ljava/lang/Class;");
+ _mids[mid_getDeclaringClass] =
+ env->getMethodID(cls, "getDeclaringClass",
+ "()Ljava/lang/Class;");
+ _mids[mid_getEnclosingClass] =
+ env->getMethodID(cls, "getEnclosingClass",
+ "()Ljava/lang/Class;");
_mids[mid_getInterfaces] =
env->getMethodID(cls, "getInterfaces",
"()[Ljava/lang/Class;");
@@ -228,6 +236,16 @@ namespace java {
return Class(env->callObjectMethod(this$, _mids[mid_getSuperclass]));
}
+ Class Class::getDeclaringClass() const
+ {
+ return Class(env->callObjectMethod(this$, _mids[mid_getDeclaringClass]));
+ }
+
+ Class Class::getEnclosingClass() const
+ {
+ return Class(env->callObjectMethod(this$, _mids[mid_getEnclosingClass]));
+ }
+
JArray<Class> Class::getInterfaces() const
{
jobjectArray array = (jobjectArray)
@@ -296,6 +314,8 @@ namespace java {
static PyObject *t_Class_isAssignableFrom(t_Class *self, PyObject *arg);
static PyObject *t_Class_getComponentType(t_Class *self);
static PyObject *t_Class_getSuperclass(t_Class *self);
+ static PyObject *t_Class_getDeclaringClass(t_Class *self);
+ static PyObject *t_Class_getEnclosingClass(t_Class *self);
static PyObject *t_Class_getInterfaces(t_Class *self);
static PyObject *t_Class_getName(t_Class *self);
static PyObject *t_Class_getModifiers(t_Class *self);
@@ -332,6 +352,8 @@ namespace java {
DECLARE_METHOD(t_Class, isAssignableFrom, METH_O),
DECLARE_METHOD(t_Class, getComponentType, METH_NOARGS),
DECLARE_METHOD(t_Class, getSuperclass, METH_NOARGS),
+ DECLARE_METHOD(t_Class, getDeclaringClass, METH_NOARGS),
+ DECLARE_METHOD(t_Class, getEnclosingClass, METH_NOARGS),
DECLARE_METHOD(t_Class, getInterfaces, METH_NOARGS),
DECLARE_METHOD(t_Class, getName, METH_NOARGS),
DECLARE_METHOD(t_Class, getModifiers, METH_NOARGS),
@@ -517,6 +539,22 @@ namespace java {
return t_Class::wrap_Object(cls);
}
+ static PyObject *t_Class_getDeclaringClass(t_Class *self)
+ {
+ Class cls((jobject) NULL);
+
+ OBJ_CALL(cls = self->object.getDeclaringClass());
+ return t_Class::wrap_Object(cls);
+ }
+
+ static PyObject *t_Class_getEnclosingClass(t_Class *self)
+ {
+ Class cls((jobject) NULL);
+
+ OBJ_CALL(cls = self->object.getEnclosingClass());
+ return t_Class::wrap_Object(cls);
+ }
+
static PyObject *t_Class_getInterfaces(t_Class *self)
{
JArray<Class> interfaces((jobject) NULL);
Modified: lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.h
URL: http://svn.apache.org/viewvc/lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.h?rev=926810&r1=926809&r2=926810&view=diff
==============================================================================
--- lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.h (original)
+++ lucene/pylucene/trunk/jcc/_jcc/java/lang/Class.h Tue Mar 23 22:01:25 2010
@@ -58,6 +58,8 @@ namespace java {
int isAssignableFrom(const Class& obj) const;
Class getComponentType() const;
Class getSuperclass() const;
+ Class getDeclaringClass() const;
+ Class getEnclosingClass() const;
JArray<Class> getInterfaces() const;
String getName() const;
int getModifiers() const;
Modified: lucene/pylucene/trunk/jcc/helpers/mingw32.py
URL: http://svn.apache.org/viewvc/lucene/pylucene/trunk/jcc/helpers/mingw32.py?rev=926810&r1=926809&r2=926810&view=diff
==============================================================================
--- lucene/pylucene/trunk/jcc/helpers/mingw32.py (original)
+++ lucene/pylucene/trunk/jcc/helpers/mingw32.py Tue Mar 23 22:01:25 2010
@@ -1,11 +1,8 @@
-import os
-import distutils.cygwinccompiler, copy
+import os, copy
+from distutils.cygwinccompiler import Mingw32CCompiler
-orig_Mingw32CCompiler = distutils.cygwinccompiler.Mingw32CCompiler
-
-
-class JCCMinGW32CCompiler(orig_Mingw32CCompiler):
+class JCCMinGW32CCompiler(Mingw32CCompiler):
def link(self, target_desc, objects, output_filename, output_dir=None,
libraries=None, library_dirs=None, runtime_library_dirs=None,
Modified: lucene/pylucene/trunk/jcc/jcc/python.py
URL: http://svn.apache.org/viewvc/lucene/pylucene/trunk/jcc/jcc/python.py?rev=926810&r1=926809&r2=926810&view=diff
==============================================================================
--- lucene/pylucene/trunk/jcc/jcc/python.py (original)
+++ lucene/pylucene/trunk/jcc/jcc/python.py Tue Mar 23 22:01:25 2010
@@ -52,6 +52,29 @@ CALLARGS = { 'boolean': ('O', '(%s ? Py_
'java.lang.String': ('O', 'env->fromJString((jstring) %s, 0)', True) }
+def getTypeParameters(cls):
+
+ while True:
+ parameters = cls.getTypeParameters()
+ if parameters:
+ return parameters
+ cls = cls.getDeclaringClass()
+ if cls is None:
+ return []
+
+
+def getActualTypeArguments(pt):
+
+ while True:
+ arguments = pt.getActualTypeArguments()
+ if arguments:
+ return arguments
+ pt = pt.getOwnerType()
+ if pt is None or not ParameterizedType.instance_(pt):
+ return []
+ pt = ParameterizedType.cast_(pt)
+
+
def parseArgs(params, current, generics):
def signature(cls):
@@ -66,7 +89,7 @@ def parseArgs(params, current, generics)
return array + 's'
if clsName == 'java.lang.Object':
return array + 'o'
- if generics and cls.getTypeParameters():
+ if generics and getTypeParameters(cls):
return array + 'K'
else:
return array + 'k'
@@ -83,7 +106,7 @@ def parseArgs(params, current, generics)
if generics:
while cls.isArray():
cls = cls.getComponentType()
- if cls.getTypeParameters():
+ if getTypeParameters(cls):
ns, sep, n = rpartition(typename(cls, current, False), '::')
return ', &a%d, &p%d, %s%st_%s::parameters_' %(i, i, ns, sep, n)
return ', &a%d' %(i)
@@ -103,7 +126,7 @@ def declareVars(out, indent, params, cur
if generics:
while param.isArray():
param = param.getComponentType()
- if param.getTypeParameters():
+ if getTypeParameters(param):
line(out, indent, 'PyTypeObject **p%d;', i)
typeParams.add(i)
@@ -212,7 +235,7 @@ def returnValue(cls, returnType, value,
if ParameterizedType.instance_(genericRT):
genericRT = ParameterizedType.cast_(genericRT)
clsArgs = []
- for clsArg in genericRT.getActualTypeArguments():
+ for clsArg in getActualTypeArguments(genericRT):
if Class.instance_(clsArg):
clsNames = Class.cast_(clsArg).getName().split('.')
clsArg = '&%s::%s$$Type' %('::'.join(cppnames(clsNames[:-1])), cppname(clsNames[-1]))
@@ -221,7 +244,7 @@ def returnValue(cls, returnType, value,
gd = TypeVariable.cast_(clsArg).getGenericDeclaration()
if Class.instance_(gd):
i = 0
- for clsParam in gd.getTypeParameters():
+ for clsParam in getTypeParameters(gd):
if clsArg == clsParam:
clsArgs.append('self->parameters[%d]' %(i))
break
@@ -234,16 +257,17 @@ def returnValue(cls, returnType, value,
break
else:
return 'return %s%st_%s::wrap_Object(%s, %s);' %(ns, sep, n, value, ', '.join(clsArgs))
+
elif TypeVariable.instance_(genericRT):
gd = TypeVariable.cast_(genericRT).getGenericDeclaration()
i = 0
if Class.instance_(gd):
- for clsParam in gd.getTypeParameters():
+ for clsParam in getTypeParameters(gd):
if genericRT == clsParam:
return 'return self->parameters[%d] != NULL ? wrapType(self->parameters[%d], %s.this$) : %s%st_%s::wrap_Object(%s);' %(i, i, value, ns, sep, n, value)
i += 1
elif Method.instance_(gd):
- for clsParam in gd.getTypeParameters():
+ for clsParam in getTypeParameters(gd):
if genericRT == clsParam and i in typeParams:
return 'return p%d != NULL && p%d[0] != NULL ? wrapType(p%d[0], %s.this$) : %s%st_%s::wrap_Object(%s);' %(i, i, i, value, ns, sep, n, value)
i += 1
@@ -478,7 +502,7 @@ def python(env, out_h, out, cls, superCl
line(out_h, indent, 'extern PyTypeObject %s$$Type;', names[-1])
if generics:
- clsParams = cls.getTypeParameters()
+ clsParams = getTypeParameters(cls)
else:
clsParams = None
Modified: lucene/pylucene/trunk/samples/LuceneInAction/lia/indexing/LockTest.py
URL: http://svn.apache.org/viewvc/lucene/pylucene/trunk/samples/LuceneInAction/lia/indexing/LockTest.py?rev=926810&r1=926809&r2=926810&view=diff
==============================================================================
--- lucene/pylucene/trunk/samples/LuceneInAction/lia/indexing/LockTest.py (original)
+++ lucene/pylucene/trunk/samples/LuceneInAction/lia/indexing/LockTest.py Tue Mar 23 22:01:25 2010
@@ -42,6 +42,5 @@ class LockTest(TestCase):
except:
pass
finally:
- IndexWriter.unlock(self.dir)
writer1.close()
self.assert_(writer2 is None)