You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by to...@apache.org on 2008/03/04 09:02:45 UTC
svn commit: r633384 [3/15] - in /harmony/enhanced/classlib/branches/java6:
depends/build/platform/ depends/files/ depends/files/bcprov/ doc/
doc/classlib/ make/ make/linux.ia64/ make/linux.ppc32/ make/linux.ppc64/
make/linux.x86.libstdc++6/ make/linux....
Modified: harmony/enhanced/classlib/branches/java6/modules/auth/src/main/java/common/javax/security/auth/kerberos/KerberosKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/auth/src/main/java/common/javax/security/auth/kerberos/KerberosKey.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/auth/src/main/java/common/javax/security/auth/kerberos/KerberosKey.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/auth/src/main/java/common/javax/security/auth/kerberos/KerberosKey.java Tue Mar 4 00:02:13 2008
@@ -24,7 +24,7 @@
import org.apache.harmony.auth.internal.nls.Messages;
/**
- * @see http://www.ietf.org/rfc/rfc3961.txt
+ * See <a href="http://www.ietf.org/rfc/rfc3961.txt">RFC3961</a>
*/
public class KerberosKey implements SecretKey, Destroyable {
Modified: harmony/enhanced/classlib/branches/java6/modules/awt/.classpath
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/awt/.classpath?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/awt/.classpath (original)
+++ harmony/enhanced/classlib/branches/java6/modules/awt/.classpath Tue Mar 4 00:02:13 2008
@@ -1,12 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry output="bin/main/common" kind="src" path="src/main/java/common"/>
- <classpathentry output="bin/main/windows" kind="src" path="src/main/java/windows"/>
- <classpathentry output="bin/main/linux" kind="src" path="src/main/java/unix"/>
- <classpathentry output="bin/test/common" kind="src" path="src/test/api/java/common"/>
- <classpathentry output="bin/test/windows" kind="src" path="src/test/api/java/windows"/>
- <classpathentry output="bin/test/linux" kind="src" path="src/test/api/java/unix"/>
+ <classpathentry kind="src" output="bin/main/common" path="src/main/java/common"/>
+ <classpathentry kind="src" output="bin/test/api" path="src/test/api/java"/>
+ <classpathentry kind="src" output="bin/test/unix" path="src/test/impl/unix"/>
+ <classpathentry kind="src" output="bin/test/windows" path="src/test/impl/windows"/>
+ <classpathentry kind="src" output="bin/test/boot" path="src/test/impl/boot"/>
+ <classpathentry kind="src" output="bin/main/windows" path="src/main/java/windows"/>
+ <classpathentry kind="src" output="bin/main/linux" path="src/main/java/unix"/>
+ <classpathentry exported="true" kind="lib" path="src/test/api/resources"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry sourcepath="JUNIT_SRC_HOME/junitsrc.zip" kind="var" path="JUNIT_HOME/junit.jar"/>
+ <classpathentry kind="var" path="JUNIT_HOME/junit.jar" sourcepath="JUNIT_SRC_HOME/junitsrc.zip"/>
<classpathentry kind="output" path="bin/main/common"/>
</classpath>
Modified: harmony/enhanced/classlib/branches/java6/modules/awt/build.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/awt/build.xml?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/awt/build.xml (original)
+++ harmony/enhanced/classlib/branches/java6/modules/awt/build.xml Tue Mar 4 00:02:13 2008
@@ -29,8 +29,8 @@
<property name="hy.awt.src.main.java.platform"
value="${hy.awt.src.main.java}/../${hy.os.family}" />
- <property name="hy.awt.src.test.api.java.platform"
- value="${hy.awt.src.test.api}/java/${hy.os.family}" />
+ <property name="hy.awt.src.test.impl.platform"
+ value="${hy.awt.src.test.impl}/${hy.os.family}" />
<fileset id="classes" dir="${hy.build}">
<or>
@@ -109,11 +109,6 @@
<target name="copy-resources" depends="-copy-win-resources">
<mkdir dir="${hy.build}" />
- <copy todir="${hy.build}" includeemptydirs="false">
- <fileset dir="${hy.awt.src.main.java}">
- <exclude name="**/*.java" />
- </fileset>
- </copy>
<mkdir dir="${hy.jdk}/jre/lib/cmm" />
<copy todir="${hy.jdk}/jre/lib/cmm">
@@ -317,9 +312,31 @@
<target name="compile-tests" depends="copy-test-resources">
<echo message="Compiling AWT tests" />
- <mkdir dir="${hy.awt.bin.test}" />
+ <mkdir dir="${hy.awt.bin.test.boot}" />
+ <javac destdir="${hy.awt.bin.test.boot}"
+ sourcepath=""
+ compiler="${hy.javac.compiler}"
+ memoryMaximumSize="${hy.javac.maxmem}"
+ source="${hy.javac.source}"
+ target="${hy.javac.target}"
+ debug="${hy.javac.debug}">
+
+ <compilerarg line="${build.compilerarg}" />
- <javac destdir="${hy.awt.bin.test}"
+ <src>
+ <pathelement location="${hy.awt.src.test.impl.boot}" />
+ </src>
+
+ <bootclasspath>
+ <fileset dir="${hy.jdk}/jre/lib/boot">
+ <include name="**/*.jar" />
+ </fileset>
+ </bootclasspath>
+ <classpath location="${basedir}/../../${junit.jar}" />
+ </javac>
+
+ <mkdir dir="${hy.awt.bin.test.classes}" />
+ <javac destdir="${hy.awt.bin.test.classes}"
sourcepath=""
compiler="${hy.javac.compiler}"
memoryMaximumSize="${hy.javac.maxmem}"
@@ -330,8 +347,8 @@
<compilerarg line="${build.compilerarg}" />
<src>
- <pathelement location="${hy.awt.src.test.api}/java/common" />
- <pathelement location="${hy.awt.src.test.api.java.platform}" />
+ <pathelement location="${hy.awt.src.test.api.java}" />
+ <pathelement location="${hy.awt.src.test.impl.platform}" />
</src>
<bootclasspath>
@@ -339,36 +356,15 @@
<include name="**/*.jar" />
</fileset>
</bootclasspath>
- <classpath location="../../build/tests" />
+ <classpath location="${basedir}/../../${junit.jar}" />
</javac>
- <!--mkdir dir="${hy.awt.src.test.api}/java/common/java/awt/geom/shapes" />
- <copy todir="${hy.awt.bin.test}/java/awt/geom/shapes" overwrite="yes">
- <fileset dir="${hy.awt.src.test.api}/java/common/java/awt/geom/shapes" />
- </copy>
- <mkdir dir="${hy.awt.src.test.api}/java/common/java/awt/geom/serialization" />
- <copy todir="${hy.awt.bin.test}/java/awt/geom/serialization" overwrite="yes">
- <fileset dir="${hy.awt.src.test.api}/java/common/java/awt/geom/serialization" />
- </copy>
- <mkdir dir="${hy.awt.src.test.api}/java/common/java/awt/shapes" />
- <copy todir="${hy.awt.bin.test}/java/awt/shapes" overwrite="yes">
- <fileset dir="${hy.awt.src.test.api}/java/common/java/awt/shapes" />
- </copy>
- <mkdir dir="${hy.awt.src.test.api}/java/common/java/java/serialization" />
- <copy todir="${hy.awt.bin.test}/java/awt/serialization" overwrite="yes">
- <fileset dir="${hy.awt.src.test.api}/java/common/java/awt/serialization" />
- </copy>
- <mkdir dir="${hy.awt.src.test.api}/java/common/org/apache/harmony/awt/gl/resources" />
- <copy todir="${hy.awt.bin.test}/org/apache/harmony/awt/gl/resources" overwrite="yes">
- <fileset dir="${hy.awt.src.test.api}/java/common/org/apache/harmony/awt/gl/resources" />
- </copy-->
+
</target>
<target name="copy-test-resources">
- <mkdir dir="${hy.awt.bin.test}" />
- <copy todir="${hy.awt.bin.test}" includeemptydirs="false">
- <fileset dir="${hy.awt.src.test.resources}">
- <exclude name="**/*.java" />
- </fileset>
+ <mkdir dir="${hy.awt.bin.test.resources}" />
+ <copy todir="${hy.awt.bin.test.resources}" includeemptydirs="false">
+ <fileset dir="${hy.awt.src.test.api.resources}" />
</copy>
</target>
@@ -378,11 +374,10 @@
</target>
<target name="run-tests">
-
<mkdir dir="${hy.tests.reports}" />
-
<property name="test.jre.home" value="${hy.jdk}/jre" />
+ <!-- bootclasspath tests -->
<junit fork="yes"
forkmode="${hy.test.forkmode}"
timeout="${hy.test.timeout}"
@@ -394,36 +389,53 @@
jvm="${test.jre.home}/bin/java">
<jvmarg line="${hy.test.vmargs}" />
-
- <jvmarg value="-DTEST_SRC_DIR=${hy.awt.bin.test}"/>
-<!-- <jvmarg value="-Djava2d.opengl=true"/> -->
- <jvmarg value="-Xbootclasspath/a:${hy.awt.bin.test}${path.separator}${basedir}/../../${junit.jar}"/>
+ <jvmarg value="-Xbootclasspath/a:${hy.awt.bin.test.boot}${path.separator}${basedir}/../../${junit.jar}"/>
<formatter type="xml" />
- <batchtest todir="${hy.tests.reports}" haltonfailure="no" >
-
- <!-- if ${test.case} -->
- <fileset dir="${hy.awt.src.test.api}/java/common">
+ <batchtest todir="${hy.tests.reports}" haltonfailure="no">
+ <fileset dir="${hy.awt.src.test.impl.boot}">
<include name="${converted.tc}" if="test.case" />
+ <include name="**/*Test.java" unless="test.case" />
+ <excludesfile name="${awt.exclude.file}" unless="test.case" />
+ <exclude name="**/*Headless*Test.java" />
</fileset>
- <fileset dir="${hy.awt.src.test.api.java.platform}">
+ </batchtest>
+ </junit>
+
+ <!-- classpath tests -->
+ <junit fork="yes"
+ forkmode="${hy.test.forkmode}"
+ timeout="${hy.test.timeout}"
+ printsummary="withOutAndErr"
+ errorproperty="test.errors"
+ failureproperty="test.failures"
+ showoutput="on"
+ dir="${basedir}"
+ jvm="${test.jre.home}/bin/java">
+
+ <jvmarg line="${hy.test.vmargs}" />
+ <classpath location="${hy.awt.bin.test.classes}" />
+
+ <formatter type="xml" />
+
+ <batchtest todir="${hy.tests.reports}">
+ <fileset dir="${hy.awt.src.test.api.java}">
<include name="${converted.tc}" if="test.case" />
- </fileset>
- <!-- unless ${test.case} -->
- <fileset dir="${hy.awt.src.test.api}/java/common">
<include name="**/*Test.java" unless="test.case" />
+ <exclude name="**/*Headless*Test.java" unless="test.case" />
<excludesfile name="${awt.exclude.file}" unless="test.case"/>
- <exclude name="**/*Headless*Test.java"/>
</fileset>
- <fileset dir="${hy.awt.src.test.api.java.platform}">
+ <fileset dir="${hy.awt.src.test.impl.platform}">
+ <include name="${converted.tc}" if="test.case" />
<include name="**/*Test.java" unless="test.case" />
+ <exclude name="**/*Headless*Test.java" unless="test.case" />
<excludesfile name="${awt.exclude.file}" unless="test.case"/>
- <exclude name="**/*Headless*Test.java"/>
</fileset>
</batchtest>
</junit>
+ <!-- headless tests, should be moved to classpath -->
<junit fork="yes"
forkmode="${hy.test.forkmode}"
timeout="${hy.test.timeout}"
@@ -435,20 +447,19 @@
jvm="${test.jre.home}/bin/java">
<jvmarg line="${hy.test.vmargs}" />
-
- <jvmarg value="-DTEST_SRC_DIR=${hy.awt.bin.test}"/>
<jvmarg value="-Djava.awt.headless=true"/>
- <jvmarg value="-Xbootclasspath/a:${hy.awt.bin.test}${path.separator}${basedir}/../../${junit.jar}"/>
+ <jvmarg value="-Xbootclasspath/a:${hy.awt.bin.test.boot}${path.separator}${basedir}/../../${junit.jar}"/>
<formatter type="xml" />
<batchtest todir="${hy.tests.reports}" haltonfailure="no" >
-
- <fileset dir="${hy.awt.src.test.api}/java/common">
+ <fileset dir="${hy.awt.src.test.impl.boot}">
+ <include name="${converted.tc}" if="test.case" />
<include name="**/*Headless*Test.java" unless="test.case" />
<excludesfile name="${awt.exclude.file}" unless="test.case"/>
</fileset>
- <fileset dir="${hy.awt.src.test.api.java.platform}">
+ <fileset dir="${hy.awt.src.test.impl.platform}">
+ <include name="${converted.tc}" if="test.case" />
<include name="**/*Headless*Test.java" unless="test.case" />
<excludesfile name="${awt.exclude.file}" unless="test.case"/>
</fileset>
Modified: harmony/enhanced/classlib/branches/java6/modules/awt/make/hyproperties.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/awt/make/hyproperties.xml?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/awt/make/hyproperties.xml (original)
+++ harmony/enhanced/classlib/branches/java6/modules/awt/make/hyproperties.xml Tue Mar 4 00:02:13 2008
@@ -17,32 +17,42 @@
-->
<hy>
- <awt location=".">
- <src>
- <main>
- <java location="src/main/java/common" />
- <native location="src/main/native" />
- <resources location="src/main/resources" />
- </main>
- <test>
- <api location="src/test/api" />
- <resources location="src/test/api/resources" />
- </test>
- <natives location="src/natives" />
- </src>
- <bin>
- <main location="bin/main" />
- <test location="bin/test" />
- </bin>
- <packaging>
- </packaging>
- </awt>
-
- <hdk location="../../deploy" />
- <jdk location="../../deploy/jdk" />
- <build location="../../build/classes" />
-
- <tests>
- <reports location="../../build/test_report" />
- </tests>
+ <awt location=".">
+ <src>
+ <main>
+ <java location="src/main/java/common"/>
+ <native location="src/main/native"/>
+ <resources location="src/main/resources"/>
+ </main>
+ <test>
+ <api>
+ <java location="src/test/api/java"/>
+ <resources location="src/test/api/resources"/>
+ </api>
+ <impl location="src/test/impl">
+ <boot location="src/test/impl/boot"/>
+ <resources location="src/test/impl/resources"/>
+ <native location="src/test/impl/native"/>
+ </impl>
+ </test>
+ </src>
+ <bin>
+ <main location="bin/main"/>
+ <test>
+ <resources location="bin/test/resources"/>
+ <classes location="bin/test/classes"/>
+ <boot location="bin/test/boot"/>
+ </test>
+ </bin>
+ <packaging>
+ </packaging>
+ </awt>
+
+ <hdk location="../../deploy"/>
+ <jdk location="../../deploy/jdk"/>
+ <build location="../../build/classes"/>
+
+ <tests>
+ <reports location="../../build/test_report"/>
+ </tests>
</hy>
Modified: harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/java/awt/Component.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/java/awt/Component.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/java/awt/Component.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/java/awt/Component.java Tue Mar 4 00:02:13 2008
@@ -3695,7 +3695,7 @@
}
private void processPaintEvent(PaintEvent event) {
- if (redrawManager == null) {
+ if (redrawManager == null || getIgnoreRepaint()) {
return;
}
Rectangle clipRect = event.getUpdateRect();
@@ -3706,13 +3706,13 @@
if (g == null) {
return;
}
- if (!getIgnoreRepaint()) {
- if (event.getID() == PaintEvent.PAINT) {
- initGraphics(g, event);
- paint(g);
- } else {
- update(g);
- }
+
+ initGraphics(g, event);
+
+ if (event.getID() == PaintEvent.PAINT) {
+ paint(g);
+ } else {
+ update(g);
}
g.dispose();
}
Modified: harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/GifDecoder.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/GifDecoder.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/GifDecoder.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/GifDecoder.java Tue Mar 4 00:02:13 2008
@@ -14,13 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-/**
- * @author Oleg V. Khaschansky
- * @version $Revision$
- */
-/*
-* Created on 27.01.2005
-*/
+
package org.apache.harmony.awt.gl.image;
import java.awt.image.ColorModel;
@@ -79,6 +73,8 @@
private byte screenBuffer[];
private int screenRGBBuffer[];
+ ColorModel gcm;
+
public GifDecoder(DecodingImageSource src, InputStream is) {
super(src, is);
try {
@@ -140,7 +136,8 @@
if (forceRGB) {
setColorModel(ColorModel.getRGBdefault());
} else {
- setColorModel(gls.globalColorTable.getColorModel(currBlock.transparentColor));
+ gcm = gls.globalColorTable.getColorModel(currBlock.transparentColor);
+ setColorModel(gcm);
}
// Fill screen buffer with the background or transparent color
@@ -298,7 +295,7 @@
gb.imageTop,
gb.imageWidth,
gb.imageHeight,
- null,
+ gcm,
gb.imageData,
0,
gb.imageWidth
@@ -463,7 +460,7 @@
imageTop + currY,
imageWidth,
numLines,
- null,
+ gcm,
imageData,
currY*imageWidth,
imageWidth
@@ -546,7 +543,7 @@
imageTop,
imageWidth,
imageHeight,
- null,
+ gcm,
data,
0,
imageWidth
@@ -664,7 +661,7 @@
imageTop,
imageWidth,
imageHeight,
- null,
+ gcm,
(byte [])toSend,
offset,
imageWidth
Modified: harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/OffscreenImage.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/OffscreenImage.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/OffscreenImage.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/OffscreenImage.java Tue Mar 4 00:02:13 2008
@@ -238,7 +238,6 @@
public void setPixels(int x, int y, int w, int h, ColorModel model,
byte[] pixels, int off, int scansize) {
-
if(raster == null){
if(cm == null){
if(model == null) {
@@ -252,7 +251,7 @@
if(model == null) {
model = cm;
}
- if(model != cm){
+ if(model != cm && cm != rgbCM){
forceToIntARGB();
}
@@ -262,14 +261,15 @@
synchronized(surfData){
if(isIntRGB){
int buff[] = new int[w];
- IndexColorModel icm = (IndexColorModel) model;
- int colorMap[] = new int[icm.getMapSize()];
- icm.getRGBs(colorMap);
int data[] = (int[])surfData;
int scanline = raster.getWidth();
DataBufferInt dbi = (DataBufferInt) db;
int rof = dbi.getOffset() + y * scanline + x;
if(model instanceof IndexColorModel){
+
+ IndexColorModel icm = (IndexColorModel) model;
+ int colorMap[] = new int[icm.getMapSize()];
+ icm.getRGBs(colorMap);
for (int sy = y, sOff = off; sy < y + h; sy++, sOff += scansize,
rof += scanline) {
Modified: harmony/enhanced/classlib/branches/java6/modules/beans/src/main/java/java/beans/PropertyEditorManager.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/beans/src/main/java/java/beans/PropertyEditorManager.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/beans/src/main/java/java/beans/PropertyEditorManager.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/beans/src/main/java/java/beans/PropertyEditorManager.java Tue Mar 4 00:02:13 2008
@@ -24,7 +24,8 @@
private static String[] path = { "org.apache.harmony.beans.editors" }; //$NON-NLS-1$
- private static final Map<Class<?>, Class<?>> registeredEditors = new HashMap<Class<?>, Class<?>>();
+ private static final Map<Class<?>, Class<?>> registeredEditors
+ = new HashMap<Class<?>, Class<?>>();
public PropertyEditorManager() {
// expected
@@ -34,11 +35,12 @@
if (targetType == null) {
throw new NullPointerException();
}
-
SecurityManager sm = System.getSecurityManager();
+
if (sm != null) {
sm.checkPropertiesAccess();
}
+
if (editorClass != null) {
registeredEditors.put(targetType, editorClass);
} else {
@@ -46,70 +48,68 @@
}
}
+ private static PropertyEditor loadEditor(Class<?> targetType, String className)
+ throws ClassNotFoundException, IllegalAccessException,
+ InstantiationException {
+ ClassLoader loader = targetType.getClassLoader();
+ Class<?> editorClass = null;
+
+ try {
+ if (loader != null) {
+ editorClass = loader.loadClass(className);
+ } else {
+ loader = ClassLoader.getSystemClassLoader();
+
+ if (loader != null) {
+ editorClass = loader.loadClass(className);
+ }
+ }
+ } catch (ClassNotFoundException e) {
+ // expected
+ }
+
+ if (editorClass == null) {
+ loader = Thread.currentThread().getContextClassLoader();
+ editorClass = loader.loadClass(className);
+ }
+ return (PropertyEditor) editorClass.newInstance();
+ }
+
public static synchronized PropertyEditor findEditor(Class<?> targetType) {
if (targetType == null) {
throw new NullPointerException();
}
+ Class<?> editorClass = registeredEditors.get(targetType);
- Class<?> editorClass = null;
- PropertyEditor editor = null;
-
- editorClass = registeredEditors.get(targetType);
if (editorClass != null) {
try {
- editor = (PropertyEditor) editorClass.newInstance();
+ return (PropertyEditor) editorClass.newInstance();
} catch (Exception e) {
// expected
}
}
-
- if (editor == null) {
- String editorClassName = targetType.getName() + "Editor"; //$NON-NLS-1$
- ClassLoader loader = targetType.getClassLoader();
+ String editorClassName = targetType.getName() + "Editor"; //$NON-NLS-1$
- if (loader == null) {
- loader = Thread.currentThread().getContextClassLoader();
- }
+ try {
+ return loadEditor(targetType, editorClassName);
+ } catch (Exception exception) {
+ // expected
+ }
+ String shortEditorClassName = (targetType.isPrimitive()
+ ? (editorClassName.substring(0, 1).toUpperCase()
+ + editorClassName.substring(1))
+ : editorClassName.substring(
+ editorClassName.lastIndexOf('.') + 1));
+ for (String element : path) {
try {
- editorClass = Class.forName(editorClassName, true, loader);
- return (PropertyEditor) editorClass.newInstance();
- } catch (ClassNotFoundException cnfe) {
- String shortEditorClassName = editorClassName
- .substring(editorClassName.lastIndexOf(".") + 1); //$NON-NLS-1$
-
- if (targetType.isPrimitive()) {
- shortEditorClassName = shortEditorClassName.substring(0, 1)
- .toUpperCase()
- + shortEditorClassName.substring(1);
- }
-
- for (String element : path) {
- editorClassName = element + "." + shortEditorClassName; //$NON-NLS-1$
-
- try {
- editorClass = Class.forName(editorClassName, true,
- loader);
- editorClass.asSubclass(PropertyEditorSupport.class);
- break;
- } catch (Exception e) {
- // expected
- }
- }
+ editorClassName = element + '.' + shortEditorClassName;
+ return loadEditor(targetType, editorClassName);
} catch (Exception e) {
// expected
}
- if(editorClass != null){
- try {
- //FIXME: cache is still needed, but need more investigation to make tests pass
-// registeredEditors.put(targetType, editorClass);
- editor = (PropertyEditor) editorClass.newInstance();
- } catch (Exception e) {
- // expected
- }
- }
}
- return editor;
+ return null;
}
public static void setEditorSearchPath(String[] apath) {
Modified: harmony/enhanced/classlib/branches/java6/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/PropertyEditorManagerRegressionTest.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/PropertyEditorManagerRegressionTest.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/PropertyEditorManagerRegressionTest.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/PropertyEditorManagerRegressionTest.java Tue Mar 4 00:02:13 2008
@@ -20,6 +20,8 @@
import java.awt.Color;
import java.beans.PropertyEditor;
import java.beans.PropertyEditorManager;
+import java.io.InputStream;
+import java.io.IOException;
import junit.framework.TestCase;
@@ -30,6 +32,11 @@
static String origPath[] = PropertyEditorManager.getEditorSearchPath();
+ private final String MOCK_TEST_CLASS_EDITOR = "testPackage.TestClassEditor";
+
+ private final String MOCK_TEST_CLASS_EDITOR_FILE
+ = "binary/java/beans/mock/TestClassEditor.bin";
+
public void testFindEditorAccordingPath_1() throws Exception {
// Regression Harmony-1205
String newPath[] = new String[origPath.length + 1];
@@ -64,6 +71,42 @@
editor.getClass());
}
+ public void testFindEditorAccordingPath_3() throws Exception {
+ // Regression Harmony-5477
+ class TestClassLoader extends ClassLoader {
+ protected Class<?> findClass(String name) throws ClassNotFoundException {
+ if (!MOCK_TEST_CLASS_EDITOR.equals(name)) {
+ throw new ClassNotFoundException(name);
+ }
+
+ try {
+ byte[] buf = new byte[1024];
+ InputStream in = getResourceAsStream(MOCK_TEST_CLASS_EDITOR_FILE);
+ int sz = 0;
+ int read;
+
+ while ((read = in.read(buf, sz, buf.length - sz)) >= 0) {
+ sz += read;
+ }
+ return defineClass(MOCK_TEST_CLASS_EDITOR, buf, 0, sz);
+ } catch (IOException e) {
+ throw (ClassNotFoundException) new ClassNotFoundException(
+ e.getMessage()).initCause(e);
+ }
+ }
+ }
+ PropertyEditorManager.setEditorSearchPath(new String[] { "testPackage" });
+ ClassLoader oldLoader = Thread.currentThread().getContextClassLoader();
+
+ try {
+ Thread.currentThread().setContextClassLoader(new TestClassLoader());
+ PropertyEditor editor = PropertyEditorManager.findEditor(TestClass.class);
+ assertEquals(MOCK_TEST_CLASS_EDITOR, editor.getClass().getName());
+ } finally {
+ Thread.currentThread().setContextClassLoader(oldLoader);
+ }
+ }
+
public void testStringEditor() throws Exception {
// Regression Harmony-1199
PropertyEditorManager.setEditorSearchPath(origPath);
@@ -75,7 +118,7 @@
assertEquals(text, editor.getAsText());
}
- // Regression for HARMONY-4062
+ // Regression Harmony-4062
public void testColorEditor() {
PropertyEditor propertyEditor = PropertyEditorManager
.findEditor(Color.class);
@@ -105,6 +148,7 @@
//expected.
}
}
+
String[] defaultSearchPath;
public void setUp(){
@@ -115,3 +159,5 @@
PropertyEditorManager.setEditorSearchPath(defaultSearchPath);
}
}
+
+class TestClass {}
Modified: harmony/enhanced/classlib/branches/java6/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/beancontext/BeanContextSupportTest.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/beancontext/BeanContextSupportTest.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/beancontext/BeanContextSupportTest.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/beancontext/BeanContextSupportTest.java Tue Mar 4 00:02:13 2008
@@ -1838,7 +1838,19 @@
}
public void testSize() {
- // covered by other testcases
+ @SuppressWarnings("serial")
+ class TestBean extends Component implements BeanContextProxy {
+ public BeanContextChildSupport childSupport = new BeanContextChildSupport();
+
+ public BeanContextChild getBeanContextProxy() {
+ return childSupport;
+ }
+ }
+
+ // Regression test for HARMONY-1829
+ BeanContextSupport obj = new BeanContextSupport();
+ obj.add(new TestBean());
+ assertEquals(2, obj.size());
}
/*
Modified: harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/javax/imageio/spi/IIORegistry.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/javax/imageio/spi/IIORegistry.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/javax/imageio/spi/IIORegistry.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/javax/imageio/spi/IIORegistry.java Tue Mar 4 00:02:13 2008
@@ -22,6 +22,7 @@
import java.util.Arrays;
+import org.apache.harmony.x.imageio.plugins.gif.GIFImageReaderSpi;
import org.apache.harmony.x.imageio.plugins.jpeg.JPEGImageReaderSpi;
import org.apache.harmony.x.imageio.plugins.jpeg.JPEGImageWriterSpi;
import org.apache.harmony.x.imageio.plugins.png.PNGImageReaderSpi;
@@ -33,24 +34,19 @@
import org.apache.harmony.x.imageio.spi.RAFIISSpi;
import org.apache.harmony.x.imageio.spi.RAFIOSSpi;
-/**
- * @author Rustem V. Rafikov, Viskov Nikolay
- * @version $Revision: 1.3 $
- */
public final class IIORegistry extends ServiceRegistry {
- private static IIORegistry instance;
+ private static IIORegistry instance;
private static final Class[] CATEGORIES = new Class[] {
- javax.imageio.spi.ImageWriterSpi.class,
- javax.imageio.spi.ImageReaderSpi.class,
- javax.imageio.spi.ImageInputStreamSpi.class,
- //javax.imageio.spi.ImageTranscoderSpi.class,
- javax.imageio.spi.ImageOutputStreamSpi.class
- };
+ javax.imageio.spi.ImageWriterSpi.class,
+ javax.imageio.spi.ImageReaderSpi.class,
+ javax.imageio.spi.ImageInputStreamSpi.class,
+ // javax.imageio.spi.ImageTranscoderSpi.class,
+ javax.imageio.spi.ImageOutputStreamSpi.class };
private IIORegistry() {
- super(Arrays.<Class<?>>asList(CATEGORIES).iterator());
+ super(Arrays.<Class<?>> asList(CATEGORIES).iterator());
registerBuiltinSpis();
registerApplicationClasspathSpis();
}
@@ -60,17 +56,18 @@
registerServiceProvider(new JPEGImageReaderSpi());
registerServiceProvider(new PNGImageReaderSpi());
registerServiceProvider(new PNGImageWriterSpi());
+ registerServiceProvider(new GIFImageReaderSpi());
registerServiceProvider(new FileIOSSpi());
registerServiceProvider(new FileIISSpi());
registerServiceProvider(new RAFIOSSpi());
registerServiceProvider(new RAFIISSpi());
- registerServiceProvider(new OutputStreamIOSSpi());
+ registerServiceProvider(new OutputStreamIOSSpi());
registerServiceProvider(new InputStreamIISSpi());
- //-- TODO implement
}
public static IIORegistry getDefaultInstance() {
- // TODO implement own instance for each ThreadGroup (see also ThreadLocal)
+ // TODO implement own instance for each ThreadGroup (see also
+ // ThreadLocal)
synchronized (IIORegistry.class) {
if (instance == null) {
instance = new IIORegistry();
@@ -80,6 +77,6 @@
}
public void registerApplicationClasspathSpis() {
- //-- TODO implement for non-builtin plugins
+ // -- TODO implement for non-builtin plugins
}
}
Modified: harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageReader.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageReader.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageReader.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageReader.java Tue Mar 4 00:02:13 2008
@@ -16,127 +16,20 @@
*/
package org.apache.harmony.x.imageio.plugins.jpeg;
-import java.awt.Image;
-import java.awt.image.BufferedImage;
-import java.awt.image.ColorModel;
-import java.awt.image.ImageObserver;
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Iterator;
-
import javax.imageio.ImageReadParam;
-import javax.imageio.ImageReader;
-import javax.imageio.ImageTypeSpecifier;
-import javax.imageio.metadata.IIOMetadata;
import javax.imageio.plugins.jpeg.JPEGImageReadParam;
import javax.imageio.spi.ImageReaderSpi;
-import javax.imageio.stream.ImageInputStream;
-
-import org.apache.harmony.awt.gl.image.DecodingImageSource;
-import org.apache.harmony.awt.gl.image.OffscreenImage;
-import org.apache.harmony.x.imageio.internal.nls.Messages;
-/**
- * This implementation uses org.apache.harmony.awt.gl.image.JpegDecoder to read
- * an image.
- *
- * TODO: Implement generic decoder to be used by javad2 and imageio
- *
- * @see org.apache.harmony.awt.gl.image.JpegDecoder
- * @see org.apache.harmony.x.imageio.plugins.jpeg.IISDecodingImageSource
- */
-public class JPEGImageReader extends ImageReader {
+import org.apache.harmony.x.imageio.plugins.AwtImageReader;
- private ImageInputStream iis;
- private OffscreenImage image;
+public class JPEGImageReader extends AwtImageReader {
public JPEGImageReader(final ImageReaderSpi imageReaderSpi) {
super(imageReaderSpi);
}
@Override
- public int getHeight(final int i) throws IOException {
- return getImage(i).getHeight(new ImageObserver() {
- public boolean imageUpdate(final Image img, final int infoflags,
- final int x, final int y, final int width,
- final int height) {
- return (infoflags & HEIGHT) == 0;
- }
- });
- }
-
- @Override
- public int getWidth(final int i) throws IOException {
- return getImage(i).getWidth(new ImageObserver() {
- public boolean imageUpdate(final Image img, final int infoflags,
- final int x, final int y, final int width,
- final int height) {
- return (infoflags & WIDTH) == 0;
- }
- });
- }
-
- @Override
- public int getNumImages(final boolean b) throws IOException {
- return 1;
- }
-
- @Override
- public Iterator<ImageTypeSpecifier> getImageTypes(final int i)
- throws IOException {
- final ColorModel model = getImage(i).getColorModel();
- final ImageTypeSpecifier[] spec = { new ImageTypeSpecifier(model,
- model.createCompatibleSampleModel(1, 1)) };
- return Arrays.asList(spec).iterator();
- }
-
- @Override
- public IIOMetadata getStreamMetadata() throws IOException {
- return null;
- }
-
- @Override
- public IIOMetadata getImageMetadata(final int i) throws IOException {
- return null;
- }
-
- @Override
- public BufferedImage read(final int i, final ImageReadParam imageReadParam)
- throws IOException {
- return getImage(i).getBufferedImage();
- }
-
- @Override
- public void setInput(final Object input, final boolean seekForwardOnly,
- final boolean ignoreMetadata) {
- super.setInput(input, seekForwardOnly, ignoreMetadata);
- iis = (ImageInputStream) input;
- image = null;
- }
-
- @Override
public ImageReadParam getDefaultReadParam() {
return new JPEGImageReadParam();
- }
-
- private OffscreenImage getImage(final int index) throws IOException {
- if (index >= getNumImages(false)) {
- throw new IndexOutOfBoundsException("index >= getNumImages()"); //$NON-NLS-1$
- }
-
- if (image == null) {
- if (iis == null) {
- throw new IllegalArgumentException(Messages.getString(
- "imageio.2", //$NON-NLS-1$
- "input")); //$NON-NLS-1$
- }
-
- final DecodingImageSource source = new IISDecodingImageSource(iis);
- image = new OffscreenImage(source);
- source.addConsumer(image);
- source.load();
- }
-
- return image;
}
}
Modified: harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageReaderSpi.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageReaderSpi.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageReaderSpi.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageReaderSpi.java Tue Mar 4 00:02:13 2008
@@ -22,65 +22,48 @@
import java.io.IOException;
import java.util.Locale;
+
import javax.imageio.ImageReader;
import javax.imageio.spi.ImageReaderSpi;
-import javax.imageio.spi.ServiceRegistry;
-import javax.imageio.stream.ImageInputStream;
+
+import org.apache.harmony.x.imageio.plugins.ImageSignature;
+import org.apache.harmony.x.imageio.plugins.ImageType;
+import org.apache.harmony.x.imageio.plugins.PluginUtils;
public class JPEGImageReaderSpi extends ImageReaderSpi {
public JPEGImageReaderSpi() {
- super(JPEGSpiConsts.vendorName, JPEGSpiConsts.version,
- JPEGSpiConsts.names, JPEGSpiConsts.suffixes,
- JPEGSpiConsts.MIMETypes, JPEGSpiConsts.readerClassName,
- STANDARD_INPUT_TYPE, JPEGSpiConsts.writerSpiNames,
- JPEGSpiConsts.supportsStandardStreamMetadataFormat,
- JPEGSpiConsts.nativeStreamMetadataFormatName,
- JPEGSpiConsts.nativeStreamMetadataFormatClassName,
- JPEGSpiConsts.extraStreamMetadataFormatNames,
- JPEGSpiConsts.extraStreamMetadataFormatClassNames,
- JPEGSpiConsts.supportsStandardImageMetadataFormat,
- JPEGSpiConsts.nativeImageMetadataFormatName,
- JPEGSpiConsts.nativeImageMetadataFormatClassName,
- JPEGSpiConsts.extraImageMetadataFormatNames,
- JPEGSpiConsts.extraImageMetadataFormatClassNames);
+ super(PluginUtils.VENDOR_NAME, PluginUtils.DEFAULT_VERSION,
+ ImageType.JPEG.getNames(),
+ ImageType.JPEG.getSuffixes(),
+ ImageType.JPEG.getMimeTypes(),
+ JPEGImageReader.class.getName(), STANDARD_INPUT_TYPE,
+ JPEGSpiConsts.writerSpiNames,
+ JPEGSpiConsts.supportsStandardStreamMetadataFormat,
+ JPEGSpiConsts.nativeStreamMetadataFormatName,
+ JPEGSpiConsts.nativeStreamMetadataFormatClassName,
+ JPEGSpiConsts.extraStreamMetadataFormatNames,
+ JPEGSpiConsts.extraStreamMetadataFormatClassNames,
+ JPEGSpiConsts.supportsStandardImageMetadataFormat,
+ JPEGSpiConsts.nativeImageMetadataFormatName,
+ JPEGSpiConsts.nativeImageMetadataFormatClassName,
+ JPEGSpiConsts.extraImageMetadataFormatNames,
+ JPEGSpiConsts.extraImageMetadataFormatClassNames);
}
-
@Override
public boolean canDecodeInput(Object source) throws IOException {
- ImageInputStream markable = (ImageInputStream) source;
- try {
- markable.mark();
-
- byte[] signature = new byte[3];
- markable.seek(0);
- markable.read(signature, 0, 3);
- markable.reset();
-
- if ((signature[0] & 0xFF) == 0xFF &&
- (signature[1] & 0xFF) == JPEGConsts.SOI &&
- (signature[2] & 0xFF) == 0xFF) { // JPEG
- return true;
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- return false;
+ return ImageSignature.JPEG.verify(source);
}
@Override
- public ImageReader createReaderInstance(Object extension) throws IOException {
+ public ImageReader createReaderInstance(Object extension)
+ throws IOException {
return new JPEGImageReader(this);
}
@Override
public String getDescription(Locale locale) {
- return "DRL JPEG decoder";
- }
-
- @Override
- public void onRegistration(ServiceRegistry registry, Class<?> category) {
- // super.onRegistration(registry, category);
+ return "JPEG image decoder"; //$NON-NLS-1$
}
}
Modified: harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageWriterSpi.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageWriterSpi.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageWriterSpi.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGImageWriterSpi.java Tue Mar 4 00:02:13 2008
@@ -20,23 +20,36 @@
*/
package org.apache.harmony.x.imageio.plugins.jpeg;
-import javax.imageio.spi.ImageWriterSpi;
-import javax.imageio.ImageWriter;
-import javax.imageio.ImageTypeSpecifier;
import java.io.IOException;
import java.util.Locale;
+import javax.imageio.ImageTypeSpecifier;
+import javax.imageio.ImageWriter;
+import javax.imageio.spi.ImageWriterSpi;
+
+import org.apache.harmony.x.imageio.plugins.ImageType;
+import org.apache.harmony.x.imageio.plugins.PluginUtils;
+
public class JPEGImageWriterSpi extends ImageWriterSpi {
public JPEGImageWriterSpi() {
- super(JPEGSpiConsts.vendorName, JPEGSpiConsts.version,
- JPEGSpiConsts.names, JPEGSpiConsts.suffixes, JPEGSpiConsts.MIMETypes,
- JPEGSpiConsts.writerClassName, STANDARD_OUTPUT_TYPE,
- JPEGSpiConsts.readerSpiNames, JPEGSpiConsts.supportsStandardStreamMetadataFormat /*TODO: support st. metadata format*/,
- JPEGSpiConsts.nativeStreamMetadataFormatName, JPEGSpiConsts.nativeStreamMetadataFormatClassName,
- JPEGSpiConsts.extraStreamMetadataFormatNames, JPEGSpiConsts.extraStreamMetadataFormatClassNames,
- JPEGSpiConsts.supportsStandardImageMetadataFormat, JPEGSpiConsts.nativeImageMetadataFormatName, JPEGSpiConsts.nativeImageMetadataFormatClassName,
- JPEGSpiConsts.extraImageMetadataFormatNames, JPEGSpiConsts.extraImageMetadataFormatClassNames);
+ /* TODO: support st. metadata format */
+ super(PluginUtils.VENDOR_NAME, PluginUtils.DEFAULT_VERSION,
+ ImageType.JPEG.getNames(),
+ ImageType.JPEG.getSuffixes(),
+ ImageType.JPEG.getMimeTypes(),
+ JPEGImageWriter.class.getName(), STANDARD_OUTPUT_TYPE,
+ JPEGSpiConsts.readerSpiNames,
+ JPEGSpiConsts.supportsStandardStreamMetadataFormat,
+ JPEGSpiConsts.nativeStreamMetadataFormatName,
+ JPEGSpiConsts.nativeStreamMetadataFormatClassName,
+ JPEGSpiConsts.extraStreamMetadataFormatNames,
+ JPEGSpiConsts.extraStreamMetadataFormatClassNames,
+ JPEGSpiConsts.supportsStandardImageMetadataFormat,
+ JPEGSpiConsts.nativeImageMetadataFormatName,
+ JPEGSpiConsts.nativeImageMetadataFormatClassName,
+ JPEGSpiConsts.extraImageMetadataFormatNames,
+ JPEGSpiConsts.extraImageMetadataFormatClassNames);
}
@Override
@@ -51,6 +64,6 @@
@Override
public String getDescription(Locale locale) {
- return "DRL JPEG Encoder";
+ return "JPEG image Encoder"; //$NON-NLS-1$
}
}
Modified: harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGSpiConsts.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGSpiConsts.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGSpiConsts.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/jpeg/JPEGSpiConsts.java Tue Mar 4 00:02:13 2008
@@ -20,38 +20,22 @@
*/
package org.apache.harmony.x.imageio.plugins.jpeg;
-/**
- * @author Rustem V. Rafikov
- * @version $Revision: 1.2 $
- */
public class JPEGSpiConsts {
- private JPEGSpiConsts() {}
+ private JPEGSpiConsts() {
+ }
- public static final String vendorName = "Intel Corporation";
- public static final String version = "0.1 beta";
-
- static final String readerClassName = "org.apache.harmony.x.imageio.plugins.jpeg.JPEGImageReader";
- static final String writerClassName = "org.apache.harmony.x.imageio.plugins.jpeg.JPEGImageWriter";
-
- static final String[] names = {"jpeg", "jpg", "JPEG", "JPG"};
- static final String[] suffixes = {"jpeg", "jpg"};
- static final String[] MIMETypes = {"image/jpeg"};
-
- static final String[] writerSpiNames = {"org.apache.harmony.x.imageio.plugins.jpeg.JPEGImageWriterSpi"};
- static final String[] readerSpiNames = {"org.apache.harmony.x.imageio.plugins.jpeg.JPEGImageReaderSpi"};
-
- //-- TODO fill this stuff with correct data
- static final boolean supportsStandardStreamMetadataFormat = false;
- static final String nativeStreamMetadataFormatName = null;
- static final String nativeStreamMetadataFormatClassName = null;
- static final String[] extraStreamMetadataFormatNames = null;
- static final String[] extraStreamMetadataFormatClassNames = null;
- static final boolean supportsStandardImageMetadataFormat = false;
- static final String nativeImageMetadataFormatName =
- "org.apache.harmony.x.imageio.plugins.jpeg.MyFormatMetadata_1.0";
- static final String nativeImageMetadataFormatClassName =
- "org.apache.harmony.x.imageio.plugins.jpeg.MyFormatMetadata";
- static final String[] extraImageMetadataFormatNames = null;
- static final String[] extraImageMetadataFormatClassNames = null;
+ static final String[] writerSpiNames = { JPEGImageWriterSpi.class.getName() };
+ static final String[] readerSpiNames = { JPEGImageReaderSpi.class.getName() };
+ // -- TODO fill this stuff with correct data
+ static final boolean supportsStandardStreamMetadataFormat = false;
+ static final String nativeStreamMetadataFormatName = null;
+ static final String nativeStreamMetadataFormatClassName = null;
+ static final String[] extraStreamMetadataFormatNames = null;
+ static final String[] extraStreamMetadataFormatClassNames = null;
+ static final boolean supportsStandardImageMetadataFormat = false;
+ static final String nativeImageMetadataFormatName = null;
+ static final String nativeImageMetadataFormatClassName = null;
+ static final String[] extraImageMetadataFormatNames = null;
+ static final String[] extraImageMetadataFormatClassNames = null;
}
Modified: harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageReader.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageReader.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageReader.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageReader.java Tue Mar 4 00:02:13 2008
@@ -15,93 +15,15 @@
* limitations under the License.
*/
-
package org.apache.harmony.x.imageio.plugins.png;
-import org.apache.harmony.awt.gl.image.DecodingImageSource;
-import org.apache.harmony.awt.gl.image.OffscreenImage;
-import org.apache.harmony.luni.util.NotImplementedException;
-import org.apache.harmony.x.imageio.plugins.jpeg.IISDecodingImageSource;
-
-import javax.imageio.ImageReader;
-import javax.imageio.ImageTypeSpecifier;
-import javax.imageio.ImageReadParam;
-import javax.imageio.plugins.jpeg.JPEGImageReadParam;
import javax.imageio.spi.ImageReaderSpi;
-import javax.imageio.stream.ImageInputStream;
-import javax.imageio.metadata.IIOMetadata;
-import java.io.IOException;
-import java.util.Iterator;
-import java.awt.image.BufferedImage;
-public class PNGImageReader extends ImageReader {
- ImageInputStream iis;
+import org.apache.harmony.x.imageio.plugins.AwtImageReader;
+
+public class PNGImageReader extends AwtImageReader {
public PNGImageReader(ImageReaderSpi imageReaderSpi) {
super(imageReaderSpi);
- }
-
- public int getNumImages(boolean allowSearch) throws IOException, NotImplementedException {
- // TODO: implement
- throw new NotImplementedException();
- }
-
- public int getWidth(int imageIndex) throws IOException, NotImplementedException {
- // TODO: implement
- throw new NotImplementedException();
- }
-
- public int getHeight(int imageIndex) throws IOException, NotImplementedException {
- // TODO: implement
- throw new NotImplementedException();
- }
-
- public Iterator<ImageTypeSpecifier> getImageTypes(int imageIndex) throws IOException, NotImplementedException {
- // TODO: implement
- throw new NotImplementedException();
- }
-
- @Override
- public IIOMetadata getStreamMetadata() throws IOException, NotImplementedException {
- // TODO: implement
- throw new NotImplementedException();
- }
-
- @Override
- public IIOMetadata getImageMetadata(int imageIndex) throws IOException, NotImplementedException {
- // TODO: implement
- throw new NotImplementedException();
- }
-
- @Override
- public BufferedImage read(int i, ImageReadParam imageReadParam) throws IOException {
- if (iis == null) {
- throw new IllegalArgumentException("input stream == null");
- }
-
- DecodingImageSource source = new IISDecodingImageSource(iis);
- OffscreenImage image = new OffscreenImage(source);
- source.addConsumer(image);
- source.load();
- // The interrupted flag should be cleared because ImageDecoder interrupts
- // current thread while decoding (due its architecture).
- Thread.interrupted();
- return image.getBufferedImage();
- }
-
- @Override
- public BufferedImage read(int i) throws IOException {
- return read(i, null);
- }
-
- @Override
- public void setInput(Object input, boolean seekForwardOnly, boolean ignoreMetadata) {
- super.setInput(input, seekForwardOnly, ignoreMetadata);
- iis = (ImageInputStream) input;
- }
-
- @Override
- public ImageReadParam getDefaultReadParam() {
- return new ImageReadParam();
}
}
Modified: harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageReaderSpi.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageReaderSpi.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageReaderSpi.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageReaderSpi.java Tue Mar 4 00:02:13 2008
@@ -15,74 +15,43 @@
* limitations under the License.
*/
-
package org.apache.harmony.x.imageio.plugins.png;
-import org.apache.harmony.x.imageio.plugins.jpeg.JPEGSpiConsts;
-
-import javax.imageio.spi.ImageReaderSpi;
-import javax.imageio.spi.ServiceRegistry;
-import javax.imageio.ImageReader;
-import javax.imageio.stream.ImageInputStream;
import java.io.IOException;
import java.util.Locale;
+import javax.imageio.ImageReader;
+import javax.imageio.spi.ImageReaderSpi;
+
+import org.apache.harmony.x.imageio.plugins.ImageSignature;
+import org.apache.harmony.x.imageio.plugins.ImageType;
+import org.apache.harmony.x.imageio.plugins.PluginUtils;
+
public class PNGImageReaderSpi extends ImageReaderSpi {
- static final String PNG_NAMES[] = new String[] {"png", "PNG"};
- static final String PNG_SUFFIXES[] = new String[] {"png"};
- static final String PNG_MIME_TYPES[] = new String[] {"image/png"};
- static final String PNG_READER_CLASS_NAME = "org.apache.harmony.x.imageio.plugins.png.PNGImageReader";
- static final String PNG_READER_SPI_NAMES[] = {"org.apache.harmony.x.imageio.plugins.png.PNGImageReaderSpi"};
public PNGImageReaderSpi() {
- super(
- JPEGSpiConsts.vendorName, JPEGSpiConsts.version,
- PNG_NAMES, PNG_SUFFIXES,
- PNG_MIME_TYPES, PNG_READER_CLASS_NAME,
- STANDARD_INPUT_TYPE, null,
- false, null,
- null, null,
- null, false,
- null, null,
- null, null
- );
+ super(PluginUtils.VENDOR_NAME, PluginUtils.DEFAULT_VERSION,
+ ImageType.PNG.getNames(), ImageType.PNG.getSuffixes(),
+ ImageType.PNG.getMimeTypes(),
+ PNGImageReader.class.getName(), STANDARD_INPUT_TYPE,
+ new String[] { PNGImageWriterSpi.class.getName() },
+ false, null, null, null, null, false, null, null, null,
+ null);
}
@Override
- public boolean canDecodeInput(Object source) throws IOException {
- ImageInputStream markable = (ImageInputStream) source;
- markable.mark();
-
- byte[] signature = new byte[8];
- markable.seek(0);
-
- int nBytes = markable.read(signature, 0, 8);
- if(nBytes != 8) markable.read(signature, nBytes, 8-nBytes);
- markable.reset();
-
- // PNG signature: 137 80 78 71 13 10 26 10
- return (signature[0] & 0xFF) == 137 &&
- (signature[1] & 0xFF) == 80 &&
- (signature[2] & 0xFF) == 78 &&
- (signature[3] & 0xFF) == 71 &&
- (signature[4] & 0xFF) == 13 &&
- (signature[5] & 0xFF) == 10 &&
- (signature[6] & 0xFF) == 26 &&
- (signature[7] & 0xFF) == 10;
+ public boolean canDecodeInput(final Object source) throws IOException {
+ return ImageSignature.PNG.verify(source);
}
@Override
- public ImageReader createReaderInstance(Object extension) throws IOException {
+ public ImageReader createReaderInstance(Object extension)
+ throws IOException {
return new PNGImageReader(this);
}
@Override
public String getDescription(Locale locale) {
- return "DRL PNG decoder";
- }
-
- @Override
- public void onRegistration(ServiceRegistry registry, Class<?> category) {
- super.onRegistration(registry, category);
+ return "PNG image decoder"; //$NON-NLS-1$
}
}
Modified: harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageWriterSpi.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageWriterSpi.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageWriterSpi.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/imageio/src/main/java/org/apache/harmony/x/imageio/plugins/png/PNGImageWriterSpi.java Tue Mar 4 00:02:13 2008
@@ -21,7 +21,6 @@
package org.apache.harmony.x.imageio.plugins.png;
import java.awt.image.ColorModel;
-import java.awt.image.DataBufferByte;
import java.awt.image.IndexColorModel;
import java.io.IOException;
import java.util.Locale;
@@ -30,31 +29,27 @@
import javax.imageio.ImageWriter;
import javax.imageio.spi.ImageWriterSpi;
+import org.apache.harmony.x.imageio.plugins.ImageType;
+import org.apache.harmony.x.imageio.plugins.PluginUtils;
+
public class PNGImageWriterSpi extends ImageWriterSpi {
public PNGImageWriterSpi() {
- super("Intel Corporation",// vendorName
- "1.0",// version
- new String[] {
- "png", "PNG" },// names
- new String[] {
- "png", "PNG" },// suffixes
- new String[] {
- "image/png" },// MIMETypes
- "org.apache.harmony.x.imageio.plugins.png.PNGImageWriter",// writerClassName
- STANDARD_OUTPUT_TYPE,// outputTypes
- new String[] {
- "org.apache.harmony.x.imageio.plugins.png.PNGImageWriterSpi" },// readerSpiNames
- false,// supportsStandardStreamMetadataFormat
- null,// nativeStreamMetadataFormatName
- null,// nativeStreamMetadataFormatClassName
- null,// extraStreamMetadataFormatNames
- null,// extraStreamMetadataFormatClassNames
- false,// supportsStandardImageMetadataFormat
- null,// nativeImageMetadataFormatName
- null,// nativeImageMetadataFormatClassName
- null,// extraImageMetadataFormatNames
- null// extraImageMetadataFormatClassNames
+ super(PluginUtils.VENDOR_NAME, PluginUtils.DEFAULT_VERSION,
+ ImageType.PNG.getNames(), ImageType.PNG.getSuffixes(),
+ ImageType.PNG.getMimeTypes(),
+ PNGImageWriter.class.getName(), STANDARD_OUTPUT_TYPE,
+ new String[] { PNGImageReaderSpi.class.getName() },
+ false,// supportsStandardStreamMetadataFormat
+ null,// nativeStreamMetadataFormatName
+ null,// nativeStreamMetadataFormatClassName
+ null,// extraStreamMetadataFormatNames
+ null,// extraStreamMetadataFormatClassNames
+ false,// supportsStandardImageMetadataFormat
+ null,// nativeImageMetadataFormatName
+ null,// nativeImageMetadataFormatClassName
+ null,// extraImageMetadataFormatNames
+ null// extraImageMetadataFormatClassNames
);
}
@@ -69,29 +64,27 @@
int bitDepth = colorModel.getPixelSize() / numBands;
if (colorModel instanceof IndexColorModel) {
- if (bitDepth != 1 && bitDepth != 2 && bitDepth != 4 && bitDepth != 8) {
+ if (bitDepth != 1 && bitDepth != 2 && bitDepth != 4
+ && bitDepth != 8) {
canEncode = false;
}
if (numBands != 1) {
canEncode = false;
}
- }
- else if (numBands == 1) {
- if (bitDepth != 1 && bitDepth != 2 && bitDepth != 4 && bitDepth != 8 && bitDepth != 16) {
+ } else if (numBands == 1) {
+ if (bitDepth != 1 && bitDepth != 2 && bitDepth != 4
+ && bitDepth != 8 && bitDepth != 16) {
canEncode = false;
}
- }
- else if (numBands == 2) {
+ } else if (numBands == 2) {
if (bitDepth != 8 && bitDepth != 16) {
canEncode = false;
}
- }
- else if (numBands == 3) {
+ } else if (numBands == 3) {
if (bitDepth != 8 && bitDepth != 16) {
canEncode = false;
}
- }
- else if (numBands == 4) {
+ } else if (numBands == 4) {
if (bitDepth != 8 && bitDepth != 16) {
canEncode = false;
}
@@ -107,7 +100,7 @@
@Override
public String getDescription(Locale arg0) {
- return "DRL PNG encoder";
+ return "PNG image encoder"; //$NON-NLS-1$
}
}
Modified: harmony/enhanced/classlib/branches/java6/modules/instrument/src/main/native/instrument/shared/inst_agt.c
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/instrument/src/main/native/instrument/shared/inst_agt.c?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/instrument/src/main/native/instrument/shared/inst_agt.c (original)
+++ harmony/enhanced/classlib/branches/java6/modules/instrument/src/main/native/instrument/shared/inst_agt.c Tue Mar 4 00:02:13 2008
@@ -24,7 +24,7 @@
#ifndef HY_ZIP_API
#include <zipsup.h>
#else /* HY_ZIP_API */
-#include <hyzip.h>
+#include <vmizip.h>
#endif /* HY_ZIP_API */
#include <jni.h>
#include <vmi.h>
@@ -154,8 +154,13 @@
char* Read_Manifest(JavaVM *vm, JNIEnv *env,const char *jar_name){
I_32 retval;
+#ifndef HY_ZIP_API
HyZipFile zipFile;
HyZipEntry zipEntry;
+#else
+ VMIZipFile zipFile;
+ VMIZipEntry zipEntry;
+#endif
char *result;
int size = 0;
char errorMessage[1024];
@@ -165,14 +170,14 @@
PORT_ACCESS_FROM_JAVAVM(vm);
#ifdef HY_ZIP_API
- HyZipFunctionTable *zipFuncs = (*VMI)->GetZipFunctions(VMI);
+ VMIZipFunctionTable *zipFuncs = (*VMI)->GetZipFunctions(VMI);
#endif /* HY_ZIP_API */
/* open zip file */
#ifndef HY_ZIP_API
retval = zip_openZipFile(privatePortLibrary, (char *)jar_name, &zipFile, NULL);
#else /* HY_ZIP_API */
- retval = zipFuncs->zip_openZipFile(VMI, (char *)jar_name, &zipFile);
+ retval = zipFuncs->zip_openZipFile(VMI, (char *)jar_name, &zipFile, 0);
#endif /* HY_ZIP_API */
if(retval){
sprintf(errorMessage,"failed to open file:%s, %d\n", jar_name, retval);
Modified: harmony/enhanced/classlib/branches/java6/modules/lang-management/src/main/java/java/lang/management/OperatingSystemMXBean.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/lang-management/src/main/java/java/lang/management/OperatingSystemMXBean.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/lang-management/src/main/java/java/lang/management/OperatingSystemMXBean.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/lang-management/src/main/java/java/lang/management/OperatingSystemMXBean.java Tue Mar 4 00:02:13 2008
@@ -37,7 +37,7 @@
*
* @return The underlying architecture of the operating system.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getArch();
@@ -60,7 +60,7 @@
*
* @return The name of the operating system.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getName();
@@ -73,7 +73,7 @@
*
* @return The version of the operating system.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getVersion();
Modified: harmony/enhanced/classlib/branches/java6/modules/lang-management/src/main/java/java/lang/management/RuntimeMXBean.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/branches/java6/modules/lang-management/src/main/java/java/lang/management/RuntimeMXBean.java?rev=633384&r1=633383&r2=633384&view=diff
==============================================================================
--- harmony/enhanced/classlib/branches/java6/modules/lang-management/src/main/java/java/lang/management/RuntimeMXBean.java (original)
+++ harmony/enhanced/classlib/branches/java6/modules/lang-management/src/main/java/java/lang/management/RuntimeMXBean.java Tue Mar 4 00:02:13 2008
@@ -54,7 +54,7 @@
*
* @return The class path.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getClassPath();
@@ -79,7 +79,7 @@
*
* @return The library path.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getLibraryPath();
@@ -110,7 +110,7 @@
*
* @return The JVM specification name.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getSpecName();
@@ -123,7 +123,7 @@
*
* @return The JVM specification vendor.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getSpecVendor();
@@ -136,7 +136,7 @@
*
* @return The JVM specification version.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getSpecVersion();
@@ -160,7 +160,7 @@
*
* @return The library path.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
Map<String, String> getSystemProperties();
@@ -182,7 +182,7 @@
*
* @return The JVM name.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getVmName();
@@ -195,7 +195,7 @@
*
* @return The JVM vendor.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getVmVendor();
@@ -208,7 +208,7 @@
*
* @return The JVM version.
* @throws SecurityException if the
- * {@link SecurityManager#checkPropertiesAccess(String)} doesn't
+ * {@link SecurityManager#checkPropertyAccess(String)} doesn't
* allow access.
*/
String getVmVersion();