/hg/gfx-test: Added new test cases: "closed" graphics entities r...
Dr Andrew John Hughes
ahughes at redhat.com
Wed Jul 21 07:43:00 PDT 2010
On 21 July 2010 13:19, <ptisnovs at icedtea.classpath.org> wrote:
> changeset fd811bf815e0 in /hg/gfx-test
> details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=fd811bf815e0
> author: Pavel Tisnovsky <ptisnovs at redhat.com>
> date: Wed Jul 21 14:19:13 2010 +0200
>
> Added new test cases: "closed" graphics entities rendering.
>
>
> diffstat:
>
> 25 files changed, 1183 insertions(+), 17 deletions(-)
> Makefile | 11
> src/org/gfxtest/framework/GfxTest.java | 15 +
> src/org/gfxtest/framework/TestImage.java | 9
> src/org/gfxtest/framework/annotations/GraphicsPrimitives.java | 3
> src/org/gfxtest/framework/annotations/RenderStyles.java | 3
> src/org/gfxtest/testsuites/DashedLines.java | 1
> src/org/gfxtest/testsuites/DashedPolylines.java | 1
> src/org/gfxtest/testsuites/DashedRectangles.java | 1
> src/org/gfxtest/testsuites/FilledCircles.java | 85 +++++++
> src/org/gfxtest/testsuites/FilledEllipses.java | 111 +++++++++
> src/org/gfxtest/testsuites/FilledPolygons.java | 117 +++++++++
> src/org/gfxtest/testsuites/FilledRectangles.java | 120 ++++++++++
> src/org/gfxtest/testsuites/FilledRoundRectangles.java | 118 +++++++++
> src/org/gfxtest/testsuites/Normal3DRectangles.java | 116 +++++++++
> src/org/gfxtest/testsuites/NormalArcs.java | 4
> src/org/gfxtest/testsuites/NormalCircles.java | 6
> src/org/gfxtest/testsuites/NormalEllipses.java | 118 +++++++++
> src/org/gfxtest/testsuites/NormalLines.java | 4
> src/org/gfxtest/testsuites/NormalPolygons.java | 114 +++++++++
> src/org/gfxtest/testsuites/NormalPolylines.java | 1
> src/org/gfxtest/testsuites/NormalRectangles.java | 120 ++++++++++
> src/org/gfxtest/testsuites/NormalRoundRectangles.java | 119 +++++++++
> src/org/gfxtest/testsuites/ScaledLines.java | 1
> src/org/gfxtest/testsuites/ScaledPolylines.java | 1
> src/org/gfxtest/testsuites/ScaledRectangles.java | 1
>
> diffs (truncated from 1395 to 500 lines):
>
> diff -r a4d9db570b97 -r fd811bf815e0 Makefile
> --- a/Makefile Tue Jul 20 13:10:11 2010 +0200
> +++ b/Makefile Wed Jul 21 14:19:13 2010 +0200
> @@ -71,8 +71,17 @@ TESTSUITE_CLASSES = \
> $(CLASSES)/$(TESTSUITE_DIR)/NormalArcs.class \
> $(CLASSES)/$(TESTSUITE_DIR)/NormalLines.class \
> $(CLASSES)/$(TESTSUITE_DIR)/NormalCircles.class \
> - $(CLASSES)/$(TESTSUITE_DIR)/NormalPolygon.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/NormalEllipses.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/NormalPolygons.class \
> $(CLASSES)/$(TESTSUITE_DIR)/NormalPolylines.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/NormalRectangles.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/NormalRoundRectangles.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/Normal3DRectangles.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/FilledCircles.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/FilledEllipses.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/FilledRectangles.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/FilledRoundRectangles.class \
> + $(CLASSES)/$(TESTSUITE_DIR)/FilledPolygons.class \
> $(CLASSES)/$(TESTSUITE_DIR)/ScaledLines.class \
> $(CLASSES)/$(TESTSUITE_DIR)/ScaledPolylines.class \
> $(CLASSES)/$(TESTSUITE_DIR)/ScaledRectangles.class \
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/framework/GfxTest.java
> --- a/src/org/gfxtest/framework/GfxTest.java Tue Jul 20 13:10:11 2010 +0200
> +++ b/src/org/gfxtest/framework/GfxTest.java Wed Jul 21 14:19:13 2010 +0200
> @@ -52,6 +52,21 @@ public abstract class GfxTest
> protected Log log = null;
> protected String suiteName = null;
> protected static final int CROSS_SIZE = 20;
> +
> + /**
> + * Minor radius for circles, ellipses etc.
> + */
> + protected static final int MINOR_RADIUS = 10;
> +
> + /**
> + * Major radius for circles, ellipses etc.
> + */
> + protected static final int MAJOR_RADIUS = 100;
> +
> + /**
> + * Offset from image borders used for rendering various graphics entities, for example rectangles.
> + */
> + protected static final int OFFSET = 80;
>
> /**
> * Write test suite duration to the log file.
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/framework/TestImage.java
> --- a/src/org/gfxtest/framework/TestImage.java Tue Jul 20 13:10:11 2010 +0200
> +++ b/src/org/gfxtest/framework/TestImage.java Wed Jul 21 14:19:13 2010 +0200
> @@ -145,4 +145,13 @@ public class TestImage
> return this.image.getHeight();
> }
>
> + public int getCenterX()
> + {
> + return this.getWidth() >> 1;
> + }
> +
> + public int getCenterY()
> + {
> + return this.getHeight() >> 1;
> + }
> }
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/framework/annotations/GraphicsPrimitives.java
> --- a/src/org/gfxtest/framework/annotations/GraphicsPrimitives.java Tue Jul 20 13:10:11 2010 +0200
> +++ b/src/org/gfxtest/framework/annotations/GraphicsPrimitives.java Wed Jul 21 14:19:13 2010 +0200
> @@ -45,8 +45,11 @@ public enum GraphicsPrimitives
> COMMON_BITMAP,
> LINE,
> RECTANGLE,
> + ROUND_RECTANGLE,
> + THREE_D_RECTANGLE,
> POLYLINE,
> POLYGON,
> ARC,
> CIRCLE,
> + ELLIPSE,
> }
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/framework/annotations/RenderStyles.java
> --- a/src/org/gfxtest/framework/annotations/RenderStyles.java Tue Jul 20 13:10:11 2010 +0200
> +++ b/src/org/gfxtest/framework/annotations/RenderStyles.java Wed Jul 21 14:19:13 2010 +0200
> @@ -44,5 +44,6 @@ public enum RenderStyles
> {
> NONE,
> NORMAL,
> - DASH
> + DASH,
> + FILL,
> }
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/testsuites/DashedLines.java
> --- a/src/org/gfxtest/testsuites/DashedLines.java Tue Jul 20 13:10:11 2010 +0200
> +++ b/src/org/gfxtest/testsuites/DashedLines.java Wed Jul 21 14:19:13 2010 +0200
> @@ -59,7 +59,6 @@ public class DashedLines extends GfxTest
> public class DashedLines extends GfxTest
> {
> private static final float DEFAULT_SCALE = 20.0f;
> - private static final int OFFSET = 80;
>
> private void drawDashedLine(TestImage image, Graphics2D graphics, float scale, int cap, float[] dash)
> {
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/testsuites/DashedPolylines.java
> --- a/src/org/gfxtest/testsuites/DashedPolylines.java Tue Jul 20 13:10:11 2010 +0200
> +++ b/src/org/gfxtest/testsuites/DashedPolylines.java Wed Jul 21 14:19:13 2010 +0200
> @@ -58,7 +58,6 @@ import org.gfxtest.framework.annotations
> @Transformation(Transformations.NONE)
> public class DashedPolylines extends GfxTest
> {
> - private static final int OFFSET = 80;
> private static final float DEFAULT_SCALE = 20.0f;
>
> private void drawDashedPolyline(TestImage image, Graphics2D graphics, float scale, int cap, int join, float[] dash)
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/testsuites/DashedRectangles.java
> --- a/src/org/gfxtest/testsuites/DashedRectangles.java Tue Jul 20 13:10:11 2010 +0200
> +++ b/src/org/gfxtest/testsuites/DashedRectangles.java Wed Jul 21 14:19:13 2010 +0200
> @@ -59,7 +59,6 @@ public class DashedRectangles extends Gf
> public class DashedRectangles extends GfxTest
> {
> private static final float DEFAULT_SCALE = 20.0f;
> - private static final int OFFSET = 80;
>
> private void drawRectangle(TestImage image, Graphics2D graphics, float scale, int cap, int join, float[] dash)
> {
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/testsuites/FilledCircles.java
> --- /dev/null Thu Jan 01 00:00:00 1970 +0000
> +++ b/src/org/gfxtest/testsuites/FilledCircles.java Wed Jul 21 14:19:13 2010 +0200
> @@ -0,0 +1,85 @@
> +/*
> + Java gfx-test framework
> +
> + Copyright (C) 2010 Red Hat
> +
> +This file is part of IcedTea.
> +
> +IcedTea is free software; you can redistribute it and/or modify
> +it under the terms of the GNU General Public License as published by
> +the Free Software Foundation; either version 2, or (at your option)
> +any later version.
> +
> +IcedTea is distributed in the hope that it will be useful, but
> +WITHOUT ANY WARRANTY; without even the implied warranty of
> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> +General Public License for more details.
> +
> +You should have received a copy of the GNU General Public License
> +along with IcedTea; see the file COPYING. If not, write to the
> +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> +02110-1301 USA.
> +
> +Linking this library statically or dynamically with other modules is
> +making a combined work based on this library. Thus, the terms and
> +conditions of the GNU General Public License cover the whole
> +combination.
> +
> +As a special exception, the copyright holders of this library give you
> +permission to link this library with independent modules to produce an
> +executable, regardless of the license terms of these independent
> +modules, and to copy and distribute the resulting executable under
> +terms of your choice, provided that you also meet, for each linked
> +independent module, the terms and conditions of the license of that
> +module. An independent module is a module which is not derived from
> +or based on this library. If you modify this library, you may extend
> +this exception to your version of the library, but you are not
> +obligated to do so. If you do not wish to do so, delete this
> +exception statement from your version.
> +*/
> +
> +package org.gfxtest.testsuites;
> +
> +import java.awt.*;
> +
> +import org.gfxtest.framework.*;
> +import org.gfxtest.framework.annotations.*;
> +
> +/**
> + * This test renders various filled circles using identity transformation matrix.
> + *
> + * @author Pavel Tisnovsky
> + */
> + at TestType(TestTypes.RENDER_TEST)
> + at GraphicsPrimitive(GraphicsPrimitives.CIRCLE)
> + at RenderStyle(RenderStyles.FILL)
> + at Transformation(Transformations.NONE)
> +public class FilledCircles extends GfxTest
> +{
> +
> + public TestResult test0(TestImage image, Graphics2D graphics)
> + {
> + int xc = image.getCenterX();
> + int yc = image.getCenterY();
> + double rmaj = (xc > yc ? yc : xc) - (MAJOR_RADIUS - MINOR_RADIUS);
> +
> + for (float m = 1.0f; m >=0.0f; m -= 1.0 / 16.0)
> + {
> + Color color = new Color(Color.HSBtoRGB(m, 1.0f, 1.0f));
> + graphics.setColor(color);
> + double angle = Math.PI * 2 * m;
> + int x = (int) (xc + rmaj * Math.cos(angle));
> + int y = (int) (yc + rmaj * Math.sin(angle));
> + int radius = (int) (MINOR_RADIUS + m * (MAJOR_RADIUS - MINOR_RADIUS));
> + graphics.fillOval(x - radius, y - radius, radius << 1, radius << 1);
> + }
> + drawCross(graphics, xc, yc, CROSS_SIZE);
> + return TestResult.PASSED;
> + }
> +
> + public static void main(String[] args)
> + {
> + new FilledCircles().runTestSuite(args);
> + }
> +
> +}
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/testsuites/FilledEllipses.java
> --- /dev/null Thu Jan 01 00:00:00 1970 +0000
> +++ b/src/org/gfxtest/testsuites/FilledEllipses.java Wed Jul 21 14:19:13 2010 +0200
> @@ -0,0 +1,111 @@
> +/*
> + Java gfx-test framework
> +
> + Copyright (C) 2010 Red Hat
> +
> +This file is part of IcedTea.
> +
> +IcedTea is free software; you can redistribute it and/or modify
> +it under the terms of the GNU General Public License as published by
> +the Free Software Foundation; either version 2, or (at your option)
> +any later version.
> +
> +IcedTea is distributed in the hope that it will be useful, but
> +WITHOUT ANY WARRANTY; without even the implied warranty of
> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> +General Public License for more details.
> +
> +You should have received a copy of the GNU General Public License
> +along with IcedTea; see the file COPYING. If not, write to the
> +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> +02110-1301 USA.
> +
> +Linking this library statically or dynamically with other modules is
> +making a combined work based on this library. Thus, the terms and
> +conditions of the GNU General Public License cover the whole
> +combination.
> +
> +As a special exception, the copyright holders of this library give you
> +permission to link this library with independent modules to produce an
> +executable, regardless of the license terms of these independent
> +modules, and to copy and distribute the resulting executable under
> +terms of your choice, provided that you also meet, for each linked
> +independent module, the terms and conditions of the license of that
> +module. An independent module is a module which is not derived from
> +or based on this library. If you modify this library, you may extend
> +this exception to your version of the library, but you are not
> +obligated to do so. If you do not wish to do so, delete this
> +exception statement from your version.
> +*/
> +
> +package org.gfxtest.testsuites;
> +
> +import java.awt.*;
> +import java.io.IOException;
> +
> +import org.gfxtest.framework.*;
> +import org.gfxtest.framework.annotations.*;
> +
> +/**
> + * This test renders various filled ellipses using identity transformation matrix.
> + *
> + * @author Pavel Tisnovsky
> + */
> + at TestType(TestTypes.RENDER_TEST)
> + at GraphicsPrimitive(GraphicsPrimitives.ELLIPSE)
> + at RenderStyle(RenderStyles.FILL)
> + at Transformation(Transformations.NONE)
> +public class FilledEllipses extends GfxTest
> +{
> +
> + private void drawFilledEllipse(TestImage image, Graphics2D graphics, float eccentricity)
> + {
> + int xc = image.getCenterX();
> + int yc = image.getCenterY();
> + double rmaj = (xc > yc ? yc : xc) - (MAJOR_RADIUS - MINOR_RADIUS);
> +
> + for (float m = 1.0f; m >= 0.0f; m -= 1.0 / 16.0)
> + {
> + Color color = new Color(Color.HSBtoRGB(m, 1.0f, 1.0f));
> + graphics.setColor(color);
> + double angle = Math.PI * 2 * m;
> + int x = (int) (xc + rmaj * Math.cos(angle));
> + int y = (int) (yc + rmaj * Math.sin(angle));
> + float radius = MINOR_RADIUS + m * (MAJOR_RADIUS - MINOR_RADIUS);
> + int rx = (int)(radius * eccentricity);
> + int ry = (int)(radius / eccentricity);
> + graphics.fillOval(x - rx, y - ry, rx << 1, ry << 1);
> + }
> + drawCross(graphics, xc, yc, CROSS_SIZE);
> + }
> +
> + protected void runOtherTests(Configuration configuration)
> + {
> + float[] eccentricities = {1/3.0f, 1/2.5f, 1/2.0f, 1/1.5f, 1.0f, 1.5f, 2.0f, 2.5f, 3.0f};
> + int testNumber = 0;
> + for (float eccentricity : eccentricities)
> + {
> + String testName = "test" + testNumber;
> + log.logBegin(testName);
> + TestImage image = new TestImage(configuration);
> + Graphics2D graphics = (Graphics2D) image.getGraphics();
> + drawFilledEllipse(image, graphics, eccentricity);
> + graphics.dispose();
> + try
> + {
> + image.writeImage(configuration, suiteName, testName);
> + }
> + catch (IOException e)
> + {
> + e.printStackTrace();
> + }
> + log.logEnd(testName);
> + testNumber++;
> + }
> + }
> +
> + public static void main(String[] args)
> + {
> + new FilledEllipses().runTestSuite(args);
> + }
> +}
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/testsuites/FilledPolygons.java
> --- /dev/null Thu Jan 01 00:00:00 1970 +0000
> +++ b/src/org/gfxtest/testsuites/FilledPolygons.java Wed Jul 21 14:19:13 2010 +0200
> @@ -0,0 +1,117 @@
> +/*
> + Java gfx-test framework
> +
> + Copyright (C) 2010 Red Hat
> +
> +This file is part of IcedTea.
> +
> +IcedTea is free software; you can redistribute it and/or modify
> +it under the terms of the GNU General Public License as published by
> +the Free Software Foundation; either version 2, or (at your option)
> +any later version.
> +
> +IcedTea is distributed in the hope that it will be useful, but
> +WITHOUT ANY WARRANTY; without even the implied warranty of
> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> +General Public License for more details.
> +
> +You should have received a copy of the GNU General Public License
> +along with IcedTea; see the file COPYING. If not, write to the
> +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> +02110-1301 USA.
> +
> +Linking this library statically or dynamically with other modules is
> +making a combined work based on this library. Thus, the terms and
> +conditions of the GNU General Public License cover the whole
> +combination.
> +
> +As a special exception, the copyright holders of this library give you
> +permission to link this library with independent modules to produce an
> +executable, regardless of the license terms of these independent
> +modules, and to copy and distribute the resulting executable under
> +terms of your choice, provided that you also meet, for each linked
> +independent module, the terms and conditions of the license of that
> +module. An independent module is a module which is not derived from
> +or based on this library. If you modify this library, you may extend
> +this exception to your version of the library, but you are not
> +obligated to do so. If you do not wish to do so, delete this
> +exception statement from your version.
> +*/
> +
> +package org.gfxtest.testsuites;
> +
> +import java.awt.*;
> +import java.io.IOException;
> +
> +import org.gfxtest.framework.*;
> +import org.gfxtest.framework.annotations.*;
> +
> +/**
> + * This test renders various polygons using identity transformation matrix.
> + *
> + * @author Pavel Tisnovsky
> + */
> + at TestType(TestTypes.RENDER_TEST)
> + at GraphicsPrimitive(GraphicsPrimitives.POLYGON)
> + at RenderStyle(RenderStyles.FILL)
> + at Transformation(Transformations.NONE)
> +public class FilledPolygons extends GfxTest
> +{
> +
> + private void drawFilledPolygon(TestImage image, Graphics2D graphics, float width, int cap, int join)
> + {
> + graphics.setColor(Color.BLACK);
> + graphics.setStroke(new BasicStroke(1, // width
> + cap, // cap
> + join)); // join
> + int w = image.getWidth();
> + int h = image.getHeight();
> + int xPoints[] = new int[] { OFFSET, w >> 1, w >> 1, w - OFFSET };
> + int yPoints[] = new int[] { h >> 1, OFFSET, h - OFFSET, h >> 1 };
> +
> + graphics.fillPolygon(xPoints, yPoints, xPoints.length);
> +
> + drawCross(graphics, OFFSET, h >> 1, CROSS_SIZE);
> + drawCross(graphics, w >> 1, OFFSET, CROSS_SIZE);
> + drawCross(graphics, w >> 1, h - OFFSET, CROSS_SIZE);
> + drawCross(graphics, w - OFFSET, h >> 1, CROSS_SIZE);
> + }
> +
> + protected void runOtherTests(Configuration configuration)
> + {
> + int[] caps = { BasicStroke.CAP_BUTT, BasicStroke.CAP_ROUND, BasicStroke.CAP_SQUARE };
> + int[] joins = { BasicStroke.JOIN_BEVEL, BasicStroke.JOIN_MITER, BasicStroke.CAP_ROUND };
> + float[] widths = { 1.0f, 2.0f, 5.0f, 10.0f, 20.0f, 40.0f };
> + int testNumber = 0;
> + for (int cap : caps)
> + {
> + for (int join : joins)
> + {
> + for (float width : widths)
> + {
> + String testName = "test" + testNumber;
> + log.logBegin(testName);
> + TestImage image = new TestImage(configuration);
> + Graphics2D graphics = (Graphics2D) image.getGraphics();
> + drawFilledPolygon(image, graphics, width, cap, join);
> + graphics.dispose();
> + try
> + {
> + image.writeImage(configuration, suiteName, testName);
> + }
> + catch (IOException e)
> + {
> + e.printStackTrace();
> + }
> + log.logEnd(testName);
> + testNumber++;
> + }
> + }
> + }
> + }
> +
> + public static void main(String[] args)
> + {
> + new FilledPolygons().runTestSuite(args);
> + }
> +}
> diff -r a4d9db570b97 -r fd811bf815e0 src/org/gfxtest/testsuites/FilledRectangles.java
> --- /dev/null Thu Jan 01 00:00:00 1970 +0000
> +++ b/src/org/gfxtest/testsuites/FilledRectangles.java Wed Jul 21 14:19:13 2010 +0200
> @@ -0,0 +1,120 @@
> +/*
> +Java gfx-test framework
> +
> + Copyright (C) 2010 Red Hat
> +
> +This file is part of IcedTea.
> +
> +IcedTea is free software; you can redistribute it and/or modify
> +it under the terms of the GNU General Public License as published by
> +the Free Software Foundation; either version 2, or (at your option)
> +any later version.
> +
> +IcedTea is distributed in the hope that it will be useful, but
> +WITHOUT ANY WARRANTY; without even the implied warranty of
> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> +General Public License for more details.
> +
> +You should have received a copy of the GNU General Public License
> +along with IcedTea; see the file COPYING. If not, write to the
> +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> +02110-1301 USA.
> +
> +Linking this library statically or dynamically with other modules is
> +making a combined work based on this library. Thus, the terms and
> +conditions of the GNU General Public License cover the whole
> +combination.
> +
> +As a special exception, the copyright holders of this library give you
> +permission to link this library with independent modules to produce an
> +executable, regardless of the license terms of these independent
> +modules, and to copy and distribute the resulting executable under
> +terms of your choice, provided that you also meet, for each linked
> +independent module, the terms and conditions of the license of that
> +module. An independent module is a module which is not derived from
> +or based on this library. If you modify this library, you may extend
> +this exception to your version of the library, but you are not
> +obligated to do so. If you do not wish to do so, delete this
> +exception statement from your version.
> +*/
> +
> +package org.gfxtest.testsuites;
> +
> +import java.awt.*;
> +import java.io.IOException;
> +
> +import org.gfxtest.framework.*;
> +import org.gfxtest.framework.annotations.*;
> +
>
The word you're looking for is 'proprietary' :-)
--
Andrew :-)
Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)
Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net
PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8
More information about the distro-pkg-dev
mailing list