You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by te...@apache.org on 2006/08/28 23:46:37 UTC
svn commit: r437854 [3/7] - in
/incubator/harmony/enhanced/classlib/trunk/modules: accessibility/
accessibility/make/ accessibility/src/main/java/org/
accessibility/src/main/java/org/apache/
accessibility/src/main/java/org/apache/harmony/ accessibility...
Modified: incubator/harmony/enhanced/classlib/trunk/modules/instrument/make/patternset.txt
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/instrument/make/patternset.txt?rev=437854&r1=437853&r2=437854&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/instrument/make/patternset.txt (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/instrument/make/patternset.txt Mon Aug 28 14:46:26 2006
@@ -1,18 +1,19 @@
-# Copyright 2006 The Apache Software Foundation or its licensors, as applicable
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-java/lang/instrument/*
-
-org/apache/harmony/instrument/internal/*
-
+# Copyright 2006 The Apache Software Foundation or its licensors, as applicable
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+java/lang/instrument/*
+
+org/apache/harmony/instrument/internal/*
+org/apache/harmony/instrument/internal/nls/*
+
Added: incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/Messages.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/Messages.java?rev=437854&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/Messages.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/Messages.java Mon Aug 28 14:46:26 2006
@@ -0,0 +1,241 @@
+/* Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
+ * THE FILE HAS BEEN AUTOGENERATED BY MSGTOOL TOOL.
+ * All changes made to this file manually will be overwritten
+ * if this tool runs again. Better make changes in the template file.
+ */
+
+package org.apache.harmony.instrument.internal.nls;
+
+
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import java.util.Locale;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+import org.apache.harmony.kernel.vm.VM;
+
+/**
+ * This class retrieves strings from a resource bundle and returns them,
+ * formatting them with MessageFormat when required.
+ * <p>
+ * It is used by the system classes to provide national language support, by
+ * looking up messages in the <code>
+ * org.apache.harmony.instrument.internal.nls.messages
+ * </code>
+ * resource bundle. Note that if this file is not available, or an invalid key
+ * is looked up, or resource bundle support is not available, the key itself
+ * will be returned as the associated message. This means that the <em>KEY</em>
+ * should a reasonable human-readable (english) string.
+ *
+ */
+public class Messages {
+
+ // ResourceBundle holding the system messages.
+ static private ResourceBundle bundle = null;
+
+ /**
+ * Retrieves a message which has no arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg) {
+ if (bundle == null)
+ return msg;
+ try {
+ return bundle.getString(msg);
+ } catch (MissingResourceException e) {
+ return "Missing message: " + msg; //$NON-NLS-1$
+ }
+ }
+
+ /**
+ * Retrieves a message which takes 1 argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * Object the object to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object arg) {
+ return getString(msg, new Object[] { arg });
+ }
+
+ /**
+ * Retrieves a message which takes 1 integer argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * int the integer to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, int arg) {
+ return getString(msg, new Object[] { Integer.toString(arg) });
+ }
+
+ /**
+ * Retrieves a message which takes 1 character argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * char the character to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, char arg) {
+ return getString(msg, new Object[] { String.valueOf(arg) });
+ }
+
+ /**
+ * Retrieves a message which takes 2 arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg1
+ * Object an object to insert in the formatted output.
+ * @param arg2
+ * Object another object to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object arg1, Object arg2) {
+ return getString(msg, new Object[] { arg1, arg2 });
+ }
+
+ /**
+ * Retrieves a message which takes several arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param args
+ * Object[] the objects to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object[] args) {
+ String format = msg;
+
+ if (bundle != null) {
+ try {
+ format = bundle.getString(msg);
+ } catch (MissingResourceException e) {
+ }
+ }
+
+ return format(format, args);
+ }
+
+ /**
+ * Generates a formatted text string given a source string containing
+ * "argument markers" of the form "{argNum}" where each argNum must be in
+ * the range 0..9. The result is generated by inserting the toString of each
+ * argument into the position indicated in the string.
+ * <p>
+ * To insert the "{" character into the output, use a single backslash
+ * character to escape it (i.e. "\{"). The "}" character does not need to be
+ * escaped.
+ *
+ * @param format
+ * String the format to use when printing.
+ * @param args
+ * Object[] the arguments to use.
+ * @return String the formatted message.
+ */
+ public static String format(String format, Object[] args) {
+ StringBuilder answer = new StringBuilder(format.length()
+ + (args.length * 20));
+ String[] argStrings = new String[args.length];
+ for (int i = 0; i < args.length; ++i) {
+ if (args[i] == null)
+ argStrings[i] = "<null>"; //$NON-NLS-1$
+ else
+ argStrings[i] = args[i].toString();
+ }
+ int lastI = 0;
+ for (int i = format.indexOf('{', 0); i >= 0; i = format.indexOf('{',
+ lastI)) {
+ if (i != 0 && format.charAt(i - 1) == '\\') {
+ // It's escaped, just print and loop.
+ if (i != 1)
+ answer.append(format.substring(lastI, i - 1));
+ answer.append('{');
+ lastI = i + 1;
+ } else {
+ // It's a format character.
+ if (i > format.length() - 3) {
+ // Bad format, just print and loop.
+ answer.append(format.substring(lastI, format.length()));
+ lastI = format.length();
+ } else {
+ int argnum = (byte) Character.digit(format.charAt(i + 1),
+ 10);
+ if (argnum < 0 || format.charAt(i + 2) != '}') {
+ // Bad format, just print and loop.
+ answer.append(format.substring(lastI, i + 1));
+ lastI = i + 1;
+ } else {
+ // Got a good one!
+ answer.append(format.substring(lastI, i));
+ if (argnum >= argStrings.length)
+ answer.append("<missing argument>"); //$NON-NLS-1$
+ else
+ answer.append(argStrings[argnum]);
+ lastI = i + 3;
+ }
+ }
+ }
+ }
+ if (lastI < format.length())
+ answer.append(format.substring(lastI, format.length()));
+ return answer.toString();
+ }
+
+ /**
+ * Changes the locale of the messages.
+ *
+ * @param locale
+ * Locale the locale to change to.
+ */
+ static public ResourceBundle setLocale(final Locale locale,
+ final String resource) {
+ try {
+ final ClassLoader loader = VM.bootCallerClassLoader();
+ return (ResourceBundle) AccessController
+ .doPrivileged(new PrivilegedAction<Object>() {
+ public Object run() {
+ return ResourceBundle.getBundle(resource, locale,
+ loader != null ? loader : ClassLoader.getSystemClassLoader());
+ }
+ });
+ } catch (MissingResourceException e) {
+ }
+ return null;
+ }
+
+ static {
+ // Attempt to load the messages.
+ try {
+ bundle = setLocale(Locale.getDefault(),
+ "org.apache.harmony.instrument.internal.nls.messages"); //$NON-NLS-1$
+ } catch (Throwable e) {
+ e.printStackTrace();
+ }
+ }
+}
Propchange: incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/Messages.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/messages.properties
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/messages.properties?rev=437854&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/messages.properties (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/messages.properties Mon Aug 28 14:46:26 2006
@@ -0,0 +1,16 @@
+# Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# messages for EN locale
Propchange: incubator/harmony/enhanced/classlib/trunk/modules/instrument/src/main/java/org/apache/harmony/instrument/internal/nls/messages.properties
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/harmony/enhanced/classlib/trunk/modules/jndi/build.xml
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/jndi/build.xml?rev=437854&r1=437853&r2=437854&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/jndi/build.xml (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/jndi/build.xml Mon Aug 28 14:46:26 2006
@@ -1,191 +1,200 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2006 The Apache Software Foundation or its
- licensors, as applicable.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<project name="JNDI Build" default="build" basedir=".">
- <description>Build for JNDI component</description>
-
- <!-- import common properties -->
- <import file="${basedir}/../../make/properties.xml" />
-
- <!-- set global properties for this build. -->
- <xmlproperty file="make/hyproperties.xml" semanticAttributes="true" />
-
- <fileset id="classes" dir="${hy.build}">
- <includesfile name="${hy.jndi}/make/patternset.txt" />
- <excludesfile name="${hy.hdk}/build/patternsets/luni-kernel.txt" />
- <excludesfile name="${hy.hdk}/build/patternsets/security-kernel.txt" />
- </fileset>
-
- <!-- Set build.compiler to "org.eclipse.jdt.core.JDTCompilerAdapter" to
- use the Eclipse Java compiler. -->
- <property name="build.compiler" value="modern" />
-
- <target name="build" depends="compile.java, build.jar" />
-
- <target name="test" depends="build, compile.tests, run.tests" />
-
- <target name="clean">
- <delete failonerror="false">
- <fileset refid="classes" />
- <fileset dir="${hy.jndi.bin.test}" />
- </delete>
- </target>
-
- <target name="compile.java">
- <echo message="Compiling JNDI classes" />
-
- <mkdir dir="${hy.build}" />
-
- <javac sourcepath=""
- srcdir="${hy.jndi.src.main.java}"
- destdir="${hy.build}"
- source="${hy.javac.source}"
- target="${hy.javac.target}"
- debug="${hy.javac.debug}">
-
- <bootclasspath>
- <fileset dir="${hy.jdk}/jre/lib/boot">
- <include name="**/*.jar" />
- </fileset>
- </bootclasspath>
- </javac>
- </target>
-
- <target name="build.jar" depends="svn-info">
- <jar destfile="${hy.jdk}/jre/lib/boot/jndi.jar"
- manifest="${hy.jndi}/META-INF/MANIFEST.MF">
- <fileset refid="classes" />
- <manifest>
- <attribute name="Implementation-Version" value="${svn.info}"/>
- </manifest>
- </jar>
- </target>
-
- <target name="compile.tests" depends="copy.test.resources" >
- <echo message="Compiling JNDI tests" />
-
- <mkdir dir="${hy.jndi.bin.test}" />
-
- <javac srcdir="${hy.jndi.src.test.java}"
- destdir="${hy.jndi.bin.test}"
- sourcepath=""
- source="${hy.javac.source}"
- target="${hy.javac.target}"
- debug="${hy.javac.debug}">
-
- <bootclasspath>
- <fileset dir="${hy.jdk}/jre/lib/boot">
- <include name="**/*.jar" />
- </fileset>
- </bootclasspath>
- <classpath location="../../build/tests" />
- </javac>
- </target>
-
- <target name="run.tests">
-
- <mkdir dir="${hy.tests.reports}" />
-
- <property name="test.jre.home" value="${hy.jdk}/jre" />
-
- <junit fork="yes"
- forkmode="perBatch"
- printsummary="withOutAndErr"
- errorproperty="test.errors"
- failureproperty="test.failures"
- showoutput="on"
- dir="${basedir}"
- jvm="${test.jre.home}/bin/java">
-
- <jvmarg value="-showversion"/>
-
- <env key="JAVA_HOME" value="${test.jre.home}"/>
-
- <classpath>
- <pathelement path="${hy.jndi.bin.test}"/>
- </classpath>
- <classpath location="../../build/tests" />
-
- <formatter type="xml" />
-
- <test name="${test.case}" todir="${hy.tests.reports}"
- if="test.case" />
-
-
- <batchtest todir="${hy.tests.reports}" haltonfailure="no"
- unless="test.case">
-
- <fileset dir="${hy.jndi.src.test.java}">
- <include name="**/*Test.java"/>
- <!-- These tests run in a separate jvm below -->
- <exclude name="org/apache/harmony/jndi/tests/javax/naming/spi/NamingManagerBuilderTest.java" />
- <exclude name="org/apache/harmony/jndi/tests/javax/naming/spi/NamingManagerTest.java" />
- <exclude name="org/apache/harmony/jndi/tests/javax/naming/spi/DirectoryManagerTest.java" />
- </fileset>
- </batchtest>
-
- <batchtest todir="${hy.tests.reports}" haltonfailure="no"
- unless="test.case">
-
- <fileset dir="${hy.jndi.src.test.java}">
- <include name="org/apache/harmony/jndi/tests/javax/naming/spi/NamingManagerTest.java" />
- </fileset>
- </batchtest>
-
- <batchtest todir="${hy.tests.reports}" haltonfailure="no"
- unless="test.case">
-
- <fileset dir="${hy.jndi.src.test.java}">
- <include name="org/apache/harmony/jndi/tests/javax/naming/spi/NamingManagerBuilderTest.java" />
- </fileset>
- </batchtest>
-
- <batchtest todir="${hy.tests.reports}" haltonfailure="no"
- unless="test.case">
-
- <fileset dir="${hy.jndi.src.test.java}">
- <include name="org/apache/harmony/jndi/tests/javax/naming/spi/DirectoryManagerTest.java" />
- </fileset>
- </batchtest>
-
- </junit>
- <antcall target="touch-failures-file" />
- <antcall target="touch-errors-file" />
- </target>
-
- <target name="touch-failures-file" if="test.failures">
- <echo file="${hy.tests.reports}/test.failures"
- append="true">jndi${line.separator}</echo>
- </target>
-
- <target name="touch-errors-file" if="test.errors">
- <echo file="${hy.tests.reports}/test.errors"
- append="true">jndi${line.separator}</echo>
- </target>
-
- <target name="copy.test.resources">
- <mkdir dir="${hy.jndi.bin.test}" />
- <copy todir="${hy.jndi.bin.test}" includeemptydirs="false">
- <fileset dir="${hy.jndi.src.test.resources}">
- <exclude name="**/*.java" />
- <exclude name="**/*.zip" />
- </fileset>
- </copy>
- </target>
-
-</project>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2006 The Apache Software Foundation or its
+ licensors, as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<project name="JNDI Build" default="build" basedir=".">
+ <description>Build for JNDI component</description>
+
+ <!-- import common properties -->
+ <import file="${basedir}/../../make/properties.xml" />
+
+ <!-- set global properties for this build. -->
+ <xmlproperty file="make/hyproperties.xml" semanticAttributes="true" />
+
+ <fileset id="classes" dir="${hy.build}">
+ <includesfile name="${hy.jndi}/make/patternset.txt" />
+ <excludesfile name="${hy.hdk}/build/patternsets/luni-kernel.txt" />
+ <excludesfile name="${hy.hdk}/build/patternsets/security-kernel.txt" />
+ </fileset>
+
+ <!-- Set build.compiler to "org.eclipse.jdt.core.JDTCompilerAdapter" to
+ use the Eclipse Java compiler. -->
+ <property name="build.compiler" value="modern" />
+
+ <target name="build" depends="compile.java, copy.resources, build.jar" />
+
+ <target name="test" depends="build, compile.tests, run.tests" />
+
+ <target name="clean">
+ <delete failonerror="false">
+ <fileset refid="classes" />
+ <fileset dir="${hy.jndi.bin.test}" />
+ </delete>
+ </target>
+
+ <target name="compile.java">
+ <echo message="Compiling JNDI classes" />
+
+ <mkdir dir="${hy.build}" />
+
+ <javac sourcepath=""
+ srcdir="${hy.jndi.src.main.java}"
+ destdir="${hy.build}"
+ source="${hy.javac.source}"
+ target="${hy.javac.target}"
+ debug="${hy.javac.debug}">
+
+ <bootclasspath>
+ <fileset dir="${hy.jdk}/jre/lib/boot">
+ <include name="**/*.jar" />
+ </fileset>
+ </bootclasspath>
+ </javac>
+ </target>
+
+ <target name="copy.resources">
+ <mkdir dir="${hy.build}" />
+ <copy todir="${hy.build}" includeemptydirs="false">
+ <fileset dir="${hy.jndi.src.main.java}">
+ <exclude name="**/*.java" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="build.jar" depends="svn-info">
+ <jar destfile="${hy.jdk}/jre/lib/boot/jndi.jar"
+ manifest="${hy.jndi}/META-INF/MANIFEST.MF">
+ <fileset refid="classes" />
+ <manifest>
+ <attribute name="Implementation-Version" value="${svn.info}"/>
+ </manifest>
+ </jar>
+ </target>
+
+ <target name="compile.tests" depends="copy.test.resources" >
+ <echo message="Compiling JNDI tests" />
+
+ <mkdir dir="${hy.jndi.bin.test}" />
+
+ <javac srcdir="${hy.jndi.src.test.java}"
+ destdir="${hy.jndi.bin.test}"
+ sourcepath=""
+ source="${hy.javac.source}"
+ target="${hy.javac.target}"
+ debug="${hy.javac.debug}">
+
+ <bootclasspath>
+ <fileset dir="${hy.jdk}/jre/lib/boot">
+ <include name="**/*.jar" />
+ </fileset>
+ </bootclasspath>
+ <classpath location="../../build/tests" />
+ </javac>
+ </target>
+
+ <target name="run.tests">
+
+ <mkdir dir="${hy.tests.reports}" />
+
+ <property name="test.jre.home" value="${hy.jdk}/jre" />
+
+ <junit fork="yes"
+ forkmode="perBatch"
+ printsummary="withOutAndErr"
+ errorproperty="test.errors"
+ failureproperty="test.failures"
+ showoutput="on"
+ dir="${basedir}"
+ jvm="${test.jre.home}/bin/java">
+
+ <jvmarg value="-showversion"/>
+
+ <env key="JAVA_HOME" value="${test.jre.home}"/>
+
+ <classpath>
+ <pathelement path="${hy.jndi.bin.test}"/>
+ </classpath>
+ <classpath location="../../build/tests" />
+
+ <formatter type="xml" />
+
+ <test name="${test.case}" todir="${hy.tests.reports}"
+ if="test.case" />
+
+
+ <batchtest todir="${hy.tests.reports}" haltonfailure="no"
+ unless="test.case">
+
+ <fileset dir="${hy.jndi.src.test.java}">
+ <include name="**/*Test.java"/>
+ <!-- These tests run in a separate jvm below -->
+ <exclude name="org/apache/harmony/jndi/tests/javax/naming/spi/NamingManagerBuilderTest.java" />
+ <exclude name="org/apache/harmony/jndi/tests/javax/naming/spi/NamingManagerTest.java" />
+ <exclude name="org/apache/harmony/jndi/tests/javax/naming/spi/DirectoryManagerTest.java" />
+ </fileset>
+ </batchtest>
+
+ <batchtest todir="${hy.tests.reports}" haltonfailure="no"
+ unless="test.case">
+
+ <fileset dir="${hy.jndi.src.test.java}">
+ <include name="org/apache/harmony/jndi/tests/javax/naming/spi/NamingManagerTest.java" />
+ </fileset>
+ </batchtest>
+
+ <batchtest todir="${hy.tests.reports}" haltonfailure="no"
+ unless="test.case">
+
+ <fileset dir="${hy.jndi.src.test.java}">
+ <include name="org/apache/harmony/jndi/tests/javax/naming/spi/NamingManagerBuilderTest.java" />
+ </fileset>
+ </batchtest>
+
+ <batchtest todir="${hy.tests.reports}" haltonfailure="no"
+ unless="test.case">
+
+ <fileset dir="${hy.jndi.src.test.java}">
+ <include name="org/apache/harmony/jndi/tests/javax/naming/spi/DirectoryManagerTest.java" />
+ </fileset>
+ </batchtest>
+
+ </junit>
+ <antcall target="touch-failures-file" />
+ <antcall target="touch-errors-file" />
+ </target>
+
+ <target name="touch-failures-file" if="test.failures">
+ <echo file="${hy.tests.reports}/test.failures"
+ append="true">jndi${line.separator}</echo>
+ </target>
+
+ <target name="touch-errors-file" if="test.errors">
+ <echo file="${hy.tests.reports}/test.errors"
+ append="true">jndi${line.separator}</echo>
+ </target>
+
+ <target name="copy.test.resources">
+ <mkdir dir="${hy.jndi.bin.test}" />
+ <copy todir="${hy.jndi.bin.test}" includeemptydirs="false">
+ <fileset dir="${hy.jndi.src.test.resources}">
+ <exclude name="**/*.java" />
+ <exclude name="**/*.zip" />
+ </fileset>
+ </copy>
+ </target>
+
+</project>
Added: incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/Messages.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/Messages.java?rev=437854&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/Messages.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/Messages.java Mon Aug 28 14:46:26 2006
@@ -0,0 +1,241 @@
+/* Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
+ * THE FILE HAS BEEN AUTOGENERATED BY MSGTOOL TOOL.
+ * All changes made to this file manually will be overwritten
+ * if this tool runs again. Better make changes in the template file.
+ */
+
+package org.apache.harmony.jndi.internal.nls;
+
+
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import java.util.Locale;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+import org.apache.harmony.kernel.vm.VM;
+
+/**
+ * This class retrieves strings from a resource bundle and returns them,
+ * formatting them with MessageFormat when required.
+ * <p>
+ * It is used by the system classes to provide national language support, by
+ * looking up messages in the <code>
+ * org.apache.harmony.jndi.internal.nls.messages
+ * </code>
+ * resource bundle. Note that if this file is not available, or an invalid key
+ * is looked up, or resource bundle support is not available, the key itself
+ * will be returned as the associated message. This means that the <em>KEY</em>
+ * should a reasonable human-readable (english) string.
+ *
+ */
+public class Messages {
+
+ // ResourceBundle holding the system messages.
+ static private ResourceBundle bundle = null;
+
+ /**
+ * Retrieves a message which has no arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg) {
+ if (bundle == null)
+ return msg;
+ try {
+ return bundle.getString(msg);
+ } catch (MissingResourceException e) {
+ return "Missing message: " + msg; //$NON-NLS-1$
+ }
+ }
+
+ /**
+ * Retrieves a message which takes 1 argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * Object the object to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object arg) {
+ return getString(msg, new Object[] { arg });
+ }
+
+ /**
+ * Retrieves a message which takes 1 integer argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * int the integer to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, int arg) {
+ return getString(msg, new Object[] { Integer.toString(arg) });
+ }
+
+ /**
+ * Retrieves a message which takes 1 character argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * char the character to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, char arg) {
+ return getString(msg, new Object[] { String.valueOf(arg) });
+ }
+
+ /**
+ * Retrieves a message which takes 2 arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg1
+ * Object an object to insert in the formatted output.
+ * @param arg2
+ * Object another object to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object arg1, Object arg2) {
+ return getString(msg, new Object[] { arg1, arg2 });
+ }
+
+ /**
+ * Retrieves a message which takes several arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param args
+ * Object[] the objects to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object[] args) {
+ String format = msg;
+
+ if (bundle != null) {
+ try {
+ format = bundle.getString(msg);
+ } catch (MissingResourceException e) {
+ }
+ }
+
+ return format(format, args);
+ }
+
+ /**
+ * Generates a formatted text string given a source string containing
+ * "argument markers" of the form "{argNum}" where each argNum must be in
+ * the range 0..9. The result is generated by inserting the toString of each
+ * argument into the position indicated in the string.
+ * <p>
+ * To insert the "{" character into the output, use a single backslash
+ * character to escape it (i.e. "\{"). The "}" character does not need to be
+ * escaped.
+ *
+ * @param format
+ * String the format to use when printing.
+ * @param args
+ * Object[] the arguments to use.
+ * @return String the formatted message.
+ */
+ public static String format(String format, Object[] args) {
+ StringBuilder answer = new StringBuilder(format.length()
+ + (args.length * 20));
+ String[] argStrings = new String[args.length];
+ for (int i = 0; i < args.length; ++i) {
+ if (args[i] == null)
+ argStrings[i] = "<null>"; //$NON-NLS-1$
+ else
+ argStrings[i] = args[i].toString();
+ }
+ int lastI = 0;
+ for (int i = format.indexOf('{', 0); i >= 0; i = format.indexOf('{',
+ lastI)) {
+ if (i != 0 && format.charAt(i - 1) == '\\') {
+ // It's escaped, just print and loop.
+ if (i != 1)
+ answer.append(format.substring(lastI, i - 1));
+ answer.append('{');
+ lastI = i + 1;
+ } else {
+ // It's a format character.
+ if (i > format.length() - 3) {
+ // Bad format, just print and loop.
+ answer.append(format.substring(lastI, format.length()));
+ lastI = format.length();
+ } else {
+ int argnum = (byte) Character.digit(format.charAt(i + 1),
+ 10);
+ if (argnum < 0 || format.charAt(i + 2) != '}') {
+ // Bad format, just print and loop.
+ answer.append(format.substring(lastI, i + 1));
+ lastI = i + 1;
+ } else {
+ // Got a good one!
+ answer.append(format.substring(lastI, i));
+ if (argnum >= argStrings.length)
+ answer.append("<missing argument>"); //$NON-NLS-1$
+ else
+ answer.append(argStrings[argnum]);
+ lastI = i + 3;
+ }
+ }
+ }
+ }
+ if (lastI < format.length())
+ answer.append(format.substring(lastI, format.length()));
+ return answer.toString();
+ }
+
+ /**
+ * Changes the locale of the messages.
+ *
+ * @param locale
+ * Locale the locale to change to.
+ */
+ static public ResourceBundle setLocale(final Locale locale,
+ final String resource) {
+ try {
+ final ClassLoader loader = VM.bootCallerClassLoader();
+ return (ResourceBundle) AccessController
+ .doPrivileged(new PrivilegedAction<Object>() {
+ public Object run() {
+ return ResourceBundle.getBundle(resource, locale,
+ loader != null ? loader : ClassLoader.getSystemClassLoader());
+ }
+ });
+ } catch (MissingResourceException e) {
+ }
+ return null;
+ }
+
+ static {
+ // Attempt to load the messages.
+ try {
+ bundle = setLocale(Locale.getDefault(),
+ "org.apache.harmony.jndi.internal.nls.messages"); //$NON-NLS-1$
+ } catch (Throwable e) {
+ e.printStackTrace();
+ }
+ }
+}
Propchange: incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/Messages.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/messages.properties
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/messages.properties?rev=437854&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/messages.properties (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/messages.properties Mon Aug 28 14:46:26 2006
@@ -0,0 +1,16 @@
+# Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# messages for EN locale
Propchange: incubator/harmony/enhanced/classlib/trunk/modules/jndi/src/main/java/org/apache/harmony/jndi/internal/nls/messages.properties
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/harmony/enhanced/classlib/trunk/modules/logging/build.xml
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/logging/build.xml?rev=437854&r1=437853&r2=437854&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/logging/build.xml (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/logging/build.xml Mon Aug 28 14:46:26 2006
@@ -1,203 +1,213 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2006 The Apache Software Foundation or its
- licensors, as applicable.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<project name="LOGGING Build" default="build" basedir=".">
- <description>Build for LOGGING component</description>
-
- <!-- import common properties -->
- <import file="${basedir}/../../make/properties.xml" />
-
- <!-- set global properties for this build. -->
- <xmlproperty file="make/hyproperties.xml" semanticAttributes="true" />
-
- <fileset id="classes" dir="${hy.build}">
- <includesfile name="${hy.logging}/make/patternset.txt" />
- <excludesfile name="${hy.hdk}/build/patternsets/luni-kernel.txt" />
- <excludesfile name="${hy.hdk}/build/patternsets/security-kernel.txt" />
- </fileset>
-
- <!-- Set build.compiler to "org.eclipse.jdt.core.JDTCompilerAdapter" to
- use the Eclipse Java compiler. -->
- <property name="build.compiler" value="modern" />
-
- <target name="build" depends="compile.java, build.jar, copy.resources" />
-
- <target name="test" depends="build, compile.tests, run.tests" />
-
- <target name="clean">
- <delete failonerror="false">
- <fileset refid="classes" />
- <fileset dir="${hy.logging.bin.test}" />
- </delete>
- </target>
-
- <target name="compile.java" depends="copy.resources">
- <echo message="Compiling LOGGING classes" />
-
- <mkdir dir="${hy.build}" />
-
- <javac sourcepath=""
- srcdir="${hy.logging.src.main.java}"
- destdir="${hy.build}"
- source="${hy.javac.source}"
- target="${hy.javac.target}"
- debug="${hy.javac.debug}">
-
- <bootclasspath>
- <fileset dir="${hy.jdk}/jre/lib/boot">
- <include name="**/*.jar" />
- </fileset>
- </bootclasspath>
- </javac>
- </target>
-
- <target name="build.jar" depends="svn-info">
- <jar destfile="${hy.jdk}/jre/lib/boot/logging.jar"
- manifest="${hy.logging}/META-INF/MANIFEST.MF">
- <fileset refid="classes" />
- <manifest>
- <attribute name="Implementation-Version" value="${svn.info}"/>
- </manifest>
- </jar>
- </target>
-
- <target name="compile.tests" depends="copy.test.resources" >
- <echo message="Compiling LOGGING tests" />
-
- <mkdir dir="${hy.logging.bin.internal}" />
- <mkdir dir="${hy.logging.bin.test}" />
-
- <javac srcdir="${hy.logging.src.test.internal}"
- destdir="${hy.logging.bin.internal}"
- sourcepath=""
- source="${hy.javac.source}"
- target="${hy.javac.target}"
- debug="${hy.javac.debug}">
-
- <bootclasspath>
- <fileset dir="${hy.jdk}/jre/lib/boot">
- <include name="**/*.jar" />
- </fileset>
- </bootclasspath>
- <classpath location="${hy.hdk}/build/test/support.jar" />
- <classpath location="../../build/tests" />
- </javac>
- <javac srcdir="${hy.logging.src.test.java}"
- destdir="${hy.logging.bin.test}"
- sourcepath=""
- source="${hy.javac.source}"
- target="${hy.javac.target}"
- debug="${hy.javac.debug}">
-
- <bootclasspath>
- <fileset dir="${hy.jdk}/jre/lib/boot">
- <include name="**/*.jar" />
- </fileset>
- <pathelement path="${hy.logging.bin.internal}"/>
- </bootclasspath>
- <classpath location="${hy.hdk}/build/test/support.jar" />
- <classpath location="../../build/tests" />
- </javac>
- </target>
-
- <target name="run.tests">
-
- <mkdir dir="${hy.tests.reports}" />
-
- <property name="test.jre.home" value="${hy.jdk}/jre" />
-
- <junit fork="yes"
- forkmode="once"
- printsummary="withOutAndErr"
- errorproperty="test.errors"
- failureproperty="test.failures"
- showoutput="on"
- dir="${basedir}"
- jvm="${test.jre.home}/bin/java">
-
- <jvmarg value="-showversion"/>
-
- <env key="JAVA_HOME" value="${test.jre.home}"/>
-
- <bootclasspath>
- <fileset dir="${hy.jdk}/jre/lib/boot">
- <include name="**/*.jar" />
- </fileset>
- <pathelement path="${hy.logging.bin.internal}"/>
- </bootclasspath>
- <classpath>
- <pathelement path="${hy.logging.bin.test}"/>
- </classpath>
- <classpath location="${hy.hdk}/build/test/support.jar" />
- <classpath location="../../build/tests" />
-
- <formatter type="xml" />
-
- <test name="${test.case}" todir="${hy.tests.reports}"
- if="test.case" />
-
- <!-- run LogManagerTest in separated VM -->
- <batchtest todir="${hy.tests.reports}" haltonfailure="no"
- unless="test.case">
-
- <fileset dir="${hy.logging.src.test.java}">
- <include name="org/apache/harmony/logging/tests/java/util/logging/LogManagerTest.java"/>
- </fileset>
- </batchtest>
-
- <batchtest todir="${hy.tests.reports}" haltonfailure="no"
- unless="test.case">
-
- <fileset dir="${hy.logging.src.test.java}">
- <include name="org/apache/harmony/logging/tests/java/util/logging/*Test.java"/>
- <exclude name="org/apache/harmony/logging/tests/java/util/logging/LogManagerTest.java" />
- </fileset>
- </batchtest>
- </junit>
- <antcall target="touch-failures-file" />
- <antcall target="touch-errors-file" />
- </target>
-
- <target name="touch-failures-file" if="test.failures">
- <echo file="${hy.tests.reports}/test.failures"
- append="true">logging${line.separator}</echo>
- </target>
-
- <target name="touch-errors-file" if="test.errors">
- <echo file="${hy.tests.reports}/test.errors"
- append="true">logging${line.separator}</echo>
- </target>
-
- <target name="copy.resources">
- <copy todir="${hy.jdk}/jre/lib" overwrite="yes" flatten="yes">
- <fileset dir="${hy.logging.src.main.java}">
- <include name="**/logging.properties" />
- </fileset>
- </copy>
- </target>
-
- <target name="copy.test.resources">
- <mkdir dir="${hy.logging.bin.test}" />
- <copy todir="${hy.logging.bin.test}" includeemptydirs="false">
- <fileset dir="${hy.logging.src.test.resources}">
- <exclude name="**/*.java" />
- </fileset>
- </copy>
- </target>
-
-</project>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2006 The Apache Software Foundation or its
+ licensors, as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<project name="LOGGING Build" default="build" basedir=".">
+ <description>Build for LOGGING component</description>
+
+ <!-- import common properties -->
+ <import file="${basedir}/../../make/properties.xml" />
+
+ <!-- set global properties for this build. -->
+ <xmlproperty file="make/hyproperties.xml" semanticAttributes="true" />
+
+ <fileset id="classes" dir="${hy.build}">
+ <includesfile name="${hy.logging}/make/patternset.txt" />
+ <excludesfile name="${hy.hdk}/build/patternsets/luni-kernel.txt" />
+ <excludesfile name="${hy.hdk}/build/patternsets/security-kernel.txt" />
+ </fileset>
+
+ <!-- Set build.compiler to "org.eclipse.jdt.core.JDTCompilerAdapter" to
+ use the Eclipse Java compiler. -->
+ <property name="build.compiler" value="modern" />
+
+ <target name="build" depends="compile.java, copy.jar.resources, build.jar, copy.resources" />
+
+ <target name="test" depends="build, compile.tests, run.tests" />
+
+ <target name="clean">
+ <delete failonerror="false">
+ <fileset refid="classes" />
+ <fileset dir="${hy.logging.bin.test}" />
+ </delete>
+ </target>
+
+ <target name="compile.java">
+ <echo message="Compiling LOGGING classes" />
+
+ <mkdir dir="${hy.build}" />
+
+ <javac sourcepath=""
+ srcdir="${hy.logging.src.main.java}"
+ destdir="${hy.build}"
+ source="${hy.javac.source}"
+ target="${hy.javac.target}"
+ debug="${hy.javac.debug}">
+
+ <bootclasspath>
+ <fileset dir="${hy.jdk}/jre/lib/boot">
+ <include name="**/*.jar" />
+ </fileset>
+ </bootclasspath>
+ </javac>
+ </target>
+
+ <target name="build.jar" depends="svn-info">
+ <jar destfile="${hy.jdk}/jre/lib/boot/logging.jar"
+ manifest="${hy.logging}/META-INF/MANIFEST.MF">
+ <fileset refid="classes" />
+ <manifest>
+ <attribute name="Implementation-Version" value="${svn.info}"/>
+ </manifest>
+ </jar>
+ </target>
+
+ <target name="compile.tests" depends="copy.test.resources" >
+ <echo message="Compiling LOGGING tests" />
+
+ <mkdir dir="${hy.logging.bin.internal}" />
+ <mkdir dir="${hy.logging.bin.test}" />
+
+ <javac srcdir="${hy.logging.src.test.internal}"
+ destdir="${hy.logging.bin.internal}"
+ sourcepath=""
+ source="${hy.javac.source}"
+ target="${hy.javac.target}"
+ debug="${hy.javac.debug}">
+
+ <bootclasspath>
+ <fileset dir="${hy.jdk}/jre/lib/boot">
+ <include name="**/*.jar" />
+ </fileset>
+ </bootclasspath>
+ <classpath location="${hy.hdk}/build/test/support.jar" />
+ <classpath location="../../build/tests" />
+ </javac>
+ <javac srcdir="${hy.logging.src.test.java}"
+ destdir="${hy.logging.bin.test}"
+ sourcepath=""
+ source="${hy.javac.source}"
+ target="${hy.javac.target}"
+ debug="${hy.javac.debug}">
+
+ <bootclasspath>
+ <fileset dir="${hy.jdk}/jre/lib/boot">
+ <include name="**/*.jar" />
+ </fileset>
+ <pathelement path="${hy.logging.bin.internal}"/>
+ </bootclasspath>
+ <classpath location="${hy.hdk}/build/test/support.jar" />
+ <classpath location="../../build/tests" />
+ </javac>
+ </target>
+
+ <target name="run.tests">
+
+ <mkdir dir="${hy.tests.reports}" />
+
+ <property name="test.jre.home" value="${hy.jdk}/jre" />
+
+ <junit fork="yes"
+ forkmode="once"
+ printsummary="withOutAndErr"
+ errorproperty="test.errors"
+ failureproperty="test.failures"
+ showoutput="on"
+ dir="${basedir}"
+ jvm="${test.jre.home}/bin/java">
+
+ <jvmarg value="-showversion"/>
+
+ <env key="JAVA_HOME" value="${test.jre.home}"/>
+
+ <bootclasspath>
+ <fileset dir="${hy.jdk}/jre/lib/boot">
+ <include name="**/*.jar" />
+ </fileset>
+ <pathelement path="${hy.logging.bin.internal}"/>
+ </bootclasspath>
+ <classpath>
+ <pathelement path="${hy.logging.bin.test}"/>
+ </classpath>
+ <classpath location="${hy.hdk}/build/test/support.jar" />
+ <classpath location="../../build/tests" />
+
+ <formatter type="xml" />
+
+ <test name="${test.case}" todir="${hy.tests.reports}"
+ if="test.case" />
+
+ <!-- run LogManagerTest in separated VM -->
+ <batchtest todir="${hy.tests.reports}" haltonfailure="no"
+ unless="test.case">
+
+ <fileset dir="${hy.logging.src.test.java}">
+ <include name="org/apache/harmony/logging/tests/java/util/logging/LogManagerTest.java"/>
+ </fileset>
+ </batchtest>
+
+ <batchtest todir="${hy.tests.reports}" haltonfailure="no"
+ unless="test.case">
+
+ <fileset dir="${hy.logging.src.test.java}">
+ <include name="org/apache/harmony/logging/tests/java/util/logging/*Test.java"/>
+ <exclude name="org/apache/harmony/logging/tests/java/util/logging/LogManagerTest.java" />
+ </fileset>
+ </batchtest>
+ </junit>
+ <antcall target="touch-failures-file" />
+ <antcall target="touch-errors-file" />
+ </target>
+
+ <target name="touch-failures-file" if="test.failures">
+ <echo file="${hy.tests.reports}/test.failures"
+ append="true">logging${line.separator}</echo>
+ </target>
+
+ <target name="touch-errors-file" if="test.errors">
+ <echo file="${hy.tests.reports}/test.errors"
+ append="true">logging${line.separator}</echo>
+ </target>
+
+ <target name="copy.jar.resources">
+ <mkdir dir="${hy.build}" />
+ <copy todir="${hy.build}" includeemptydirs="false">
+ <fileset dir="${hy.logging.src.main.java}">
+ <exclude name="**/*.java" />
+ <exclude name="**/logging.properties" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="copy.resources">
+ <copy todir="${hy.jdk}/jre/lib" overwrite="yes" flatten="yes">
+ <fileset dir="${hy.logging.src.main.java}">
+ <include name="**/logging.properties" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="copy.test.resources">
+ <mkdir dir="${hy.logging.bin.test}" />
+ <copy todir="${hy.logging.bin.test}" includeemptydirs="false">
+ <fileset dir="${hy.logging.src.test.resources}">
+ <exclude name="**/*.java" />
+ </fileset>
+ </copy>
+ </target>
+
+</project>
Modified: incubator/harmony/enhanced/classlib/trunk/modules/logging/make/patternset.txt
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/logging/make/patternset.txt?rev=437854&r1=437853&r2=437854&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/logging/make/patternset.txt (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/logging/make/patternset.txt Mon Aug 28 14:46:26 2006
@@ -1,15 +1,17 @@
-# Copyright 2005 The Apache Software Foundation or its licensors, as applicable
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-java/util/logging/*
\ No newline at end of file
+# Copyright 2005 The Apache Software Foundation or its licensors, as applicable
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+java/util/logging/*
+
+org/apache/harmony/logging/internal/nls/*
Added: incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/Messages.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/Messages.java?rev=437854&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/Messages.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/Messages.java Mon Aug 28 14:46:26 2006
@@ -0,0 +1,241 @@
+/* Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
+ * THE FILE HAS BEEN AUTOGENERATED BY MSGTOOL TOOL.
+ * All changes made to this file manually will be overwritten
+ * if this tool runs again. Better make changes in the template file.
+ */
+
+package org.apache.harmony.logging.internal.nls;
+
+
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import java.util.Locale;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+import org.apache.harmony.kernel.vm.VM;
+
+/**
+ * This class retrieves strings from a resource bundle and returns them,
+ * formatting them with MessageFormat when required.
+ * <p>
+ * It is used by the system classes to provide national language support, by
+ * looking up messages in the <code>
+ * org.apache.harmony.logging.internal.nls.messages
+ * </code>
+ * resource bundle. Note that if this file is not available, or an invalid key
+ * is looked up, or resource bundle support is not available, the key itself
+ * will be returned as the associated message. This means that the <em>KEY</em>
+ * should a reasonable human-readable (english) string.
+ *
+ */
+public class Messages {
+
+ // ResourceBundle holding the system messages.
+ static private ResourceBundle bundle = null;
+
+ /**
+ * Retrieves a message which has no arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg) {
+ if (bundle == null)
+ return msg;
+ try {
+ return bundle.getString(msg);
+ } catch (MissingResourceException e) {
+ return "Missing message: " + msg; //$NON-NLS-1$
+ }
+ }
+
+ /**
+ * Retrieves a message which takes 1 argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * Object the object to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object arg) {
+ return getString(msg, new Object[] { arg });
+ }
+
+ /**
+ * Retrieves a message which takes 1 integer argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * int the integer to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, int arg) {
+ return getString(msg, new Object[] { Integer.toString(arg) });
+ }
+
+ /**
+ * Retrieves a message which takes 1 character argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * char the character to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, char arg) {
+ return getString(msg, new Object[] { String.valueOf(arg) });
+ }
+
+ /**
+ * Retrieves a message which takes 2 arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg1
+ * Object an object to insert in the formatted output.
+ * @param arg2
+ * Object another object to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object arg1, Object arg2) {
+ return getString(msg, new Object[] { arg1, arg2 });
+ }
+
+ /**
+ * Retrieves a message which takes several arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param args
+ * Object[] the objects to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object[] args) {
+ String format = msg;
+
+ if (bundle != null) {
+ try {
+ format = bundle.getString(msg);
+ } catch (MissingResourceException e) {
+ }
+ }
+
+ return format(format, args);
+ }
+
+ /**
+ * Generates a formatted text string given a source string containing
+ * "argument markers" of the form "{argNum}" where each argNum must be in
+ * the range 0..9. The result is generated by inserting the toString of each
+ * argument into the position indicated in the string.
+ * <p>
+ * To insert the "{" character into the output, use a single backslash
+ * character to escape it (i.e. "\{"). The "}" character does not need to be
+ * escaped.
+ *
+ * @param format
+ * String the format to use when printing.
+ * @param args
+ * Object[] the arguments to use.
+ * @return String the formatted message.
+ */
+ public static String format(String format, Object[] args) {
+ StringBuilder answer = new StringBuilder(format.length()
+ + (args.length * 20));
+ String[] argStrings = new String[args.length];
+ for (int i = 0; i < args.length; ++i) {
+ if (args[i] == null)
+ argStrings[i] = "<null>"; //$NON-NLS-1$
+ else
+ argStrings[i] = args[i].toString();
+ }
+ int lastI = 0;
+ for (int i = format.indexOf('{', 0); i >= 0; i = format.indexOf('{',
+ lastI)) {
+ if (i != 0 && format.charAt(i - 1) == '\\') {
+ // It's escaped, just print and loop.
+ if (i != 1)
+ answer.append(format.substring(lastI, i - 1));
+ answer.append('{');
+ lastI = i + 1;
+ } else {
+ // It's a format character.
+ if (i > format.length() - 3) {
+ // Bad format, just print and loop.
+ answer.append(format.substring(lastI, format.length()));
+ lastI = format.length();
+ } else {
+ int argnum = (byte) Character.digit(format.charAt(i + 1),
+ 10);
+ if (argnum < 0 || format.charAt(i + 2) != '}') {
+ // Bad format, just print and loop.
+ answer.append(format.substring(lastI, i + 1));
+ lastI = i + 1;
+ } else {
+ // Got a good one!
+ answer.append(format.substring(lastI, i));
+ if (argnum >= argStrings.length)
+ answer.append("<missing argument>"); //$NON-NLS-1$
+ else
+ answer.append(argStrings[argnum]);
+ lastI = i + 3;
+ }
+ }
+ }
+ }
+ if (lastI < format.length())
+ answer.append(format.substring(lastI, format.length()));
+ return answer.toString();
+ }
+
+ /**
+ * Changes the locale of the messages.
+ *
+ * @param locale
+ * Locale the locale to change to.
+ */
+ static public ResourceBundle setLocale(final Locale locale,
+ final String resource) {
+ try {
+ final ClassLoader loader = VM.bootCallerClassLoader();
+ return (ResourceBundle) AccessController
+ .doPrivileged(new PrivilegedAction<Object>() {
+ public Object run() {
+ return ResourceBundle.getBundle(resource, locale,
+ loader != null ? loader : ClassLoader.getSystemClassLoader());
+ }
+ });
+ } catch (MissingResourceException e) {
+ }
+ return null;
+ }
+
+ static {
+ // Attempt to load the messages.
+ try {
+ bundle = setLocale(Locale.getDefault(),
+ "org.apache.harmony.logging.internal.nls.messages"); //$NON-NLS-1$
+ } catch (Throwable e) {
+ e.printStackTrace();
+ }
+ }
+}
Propchange: incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/Messages.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/messages.properties
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/messages.properties?rev=437854&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/messages.properties (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/messages.properties Mon Aug 28 14:46:26 2006
@@ -0,0 +1,16 @@
+# Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# messages for EN locale
Propchange: incubator/harmony/enhanced/classlib/trunk/modules/logging/src/main/java/org/apache/harmony/logging/internal/nls/messages.properties
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/harmony/enhanced/classlib/trunk/modules/luni/build.xml
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/luni/build.xml?rev=437854&r1=437853&r2=437854&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/luni/build.xml (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/luni/build.xml Mon Aug 28 14:46:26 2006
@@ -38,7 +38,7 @@
<property file="../../make/depends.properties" />
<property name="fdlibm.zip" location="${depends.oss}/fdlibm_5.2.zip" />
- <target name="build" depends="compile.java, build.jar" />
+ <target name="build" depends="compile.java, copy.resources, build.jar" />
<target name="copy.native.includes">
<copy todir="${hy.hdk}/include" overwrite="yes">
@@ -251,7 +251,7 @@
</delete>
</target>
- <target name="compile.java" depends="copy.resources">
+ <target name="compile.java">
<echo message="Compiling LUNI classes" />
<javac sourcepath=""
Modified: incubator/harmony/enhanced/classlib/trunk/modules/luni/make/patternset.txt
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/luni/make/patternset.txt?rev=437854&r1=437853&r2=437854&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/luni/make/patternset.txt (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/luni/make/patternset.txt Mon Aug 28 14:46:26 2006
@@ -1,40 +1,42 @@
-# Copyright 2005 The Apache Software Foundation or its licensors, as applicable
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-java/lang/*
-org/apache/harmony/luni/internal/process/*
-
-java/util/*
-org/apache/harmony/luni/util/*
-
-java/net/*
-org/apache/harmony/luni/internal/net/www/protocol/file/*
-org/apache/harmony/luni/internal/net/www/protocol/ftp/*
-org/apache/harmony/luni/internal/net/www/protocol/http/*
-org/apache/harmony/luni/internal/net/www/protocol/https/*
-org/apache/harmony/luni/internal/net/www/protocol/jar/*
-
-java/io/*
-com/ibm/oti/io/*
-
-java/lang/ref/*
-
-java/lang/reflect/*
-
-org/apache/harmony/luni/internal/locale/*
-org/apache/harmony/luni/internal/net/www/*
-org/apache/harmony/luni/internal/reflect/*
-org/apache/harmony/luni/net/*
-org/apache/harmony/luni/platform/*
-org/apache/harmony/luni/util/*
+# Copyright 2005 The Apache Software Foundation or its licensors, as applicable
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+java/lang/*
+org/apache/harmony/luni/internal/process/*
+
+java/util/*
+org/apache/harmony/luni/util/*
+
+java/net/*
+org/apache/harmony/luni/internal/net/www/protocol/file/*
+org/apache/harmony/luni/internal/net/www/protocol/ftp/*
+org/apache/harmony/luni/internal/net/www/protocol/http/*
+org/apache/harmony/luni/internal/net/www/protocol/https/*
+org/apache/harmony/luni/internal/net/www/protocol/jar/*
+
+java/io/*
+com/ibm/oti/io/*
+
+java/lang/ref/*
+
+java/lang/reflect/*
+
+org/apache/harmony/luni/internal/locale/*
+org/apache/harmony/luni/internal/net/www/*
+org/apache/harmony/luni/internal/reflect/*
+org/apache/harmony/luni/net/*
+org/apache/harmony/luni/platform/*
+org/apache/harmony/luni/util/*
+
+org/apache/harmony/luni/internal/nls/*
Added: incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/Messages.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/Messages.java?rev=437854&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/Messages.java (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/Messages.java Mon Aug 28 14:46:26 2006
@@ -0,0 +1,241 @@
+/* Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
+ * THE FILE HAS BEEN AUTOGENERATED BY MSGTOOL TOOL.
+ * All changes made to this file manually will be overwritten
+ * if this tool runs again. Better make changes in the template file.
+ */
+
+package org.apache.harmony.luni.internal.nls;
+
+
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import java.util.Locale;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+import org.apache.harmony.kernel.vm.VM;
+
+/**
+ * This class retrieves strings from a resource bundle and returns them,
+ * formatting them with MessageFormat when required.
+ * <p>
+ * It is used by the system classes to provide national language support, by
+ * looking up messages in the <code>
+ * org.apache.harmony.luni.internal.nls.messages
+ * </code>
+ * resource bundle. Note that if this file is not available, or an invalid key
+ * is looked up, or resource bundle support is not available, the key itself
+ * will be returned as the associated message. This means that the <em>KEY</em>
+ * should a reasonable human-readable (english) string.
+ *
+ */
+public class Messages {
+
+ // ResourceBundle holding the system messages.
+ static private ResourceBundle bundle = null;
+
+ /**
+ * Retrieves a message which has no arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg) {
+ if (bundle == null)
+ return msg;
+ try {
+ return bundle.getString(msg);
+ } catch (MissingResourceException e) {
+ return "Missing message: " + msg; //$NON-NLS-1$
+ }
+ }
+
+ /**
+ * Retrieves a message which takes 1 argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * Object the object to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object arg) {
+ return getString(msg, new Object[] { arg });
+ }
+
+ /**
+ * Retrieves a message which takes 1 integer argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * int the integer to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, int arg) {
+ return getString(msg, new Object[] { Integer.toString(arg) });
+ }
+
+ /**
+ * Retrieves a message which takes 1 character argument.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg
+ * char the character to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, char arg) {
+ return getString(msg, new Object[] { String.valueOf(arg) });
+ }
+
+ /**
+ * Retrieves a message which takes 2 arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param arg1
+ * Object an object to insert in the formatted output.
+ * @param arg2
+ * Object another object to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object arg1, Object arg2) {
+ return getString(msg, new Object[] { arg1, arg2 });
+ }
+
+ /**
+ * Retrieves a message which takes several arguments.
+ *
+ * @param msg
+ * String the key to look up.
+ * @param args
+ * Object[] the objects to insert in the formatted output.
+ * @return String the message for that key in the system message bundle.
+ */
+ static public String getString(String msg, Object[] args) {
+ String format = msg;
+
+ if (bundle != null) {
+ try {
+ format = bundle.getString(msg);
+ } catch (MissingResourceException e) {
+ }
+ }
+
+ return format(format, args);
+ }
+
+ /**
+ * Generates a formatted text string given a source string containing
+ * "argument markers" of the form "{argNum}" where each argNum must be in
+ * the range 0..9. The result is generated by inserting the toString of each
+ * argument into the position indicated in the string.
+ * <p>
+ * To insert the "{" character into the output, use a single backslash
+ * character to escape it (i.e. "\{"). The "}" character does not need to be
+ * escaped.
+ *
+ * @param format
+ * String the format to use when printing.
+ * @param args
+ * Object[] the arguments to use.
+ * @return String the formatted message.
+ */
+ public static String format(String format, Object[] args) {
+ StringBuilder answer = new StringBuilder(format.length()
+ + (args.length * 20));
+ String[] argStrings = new String[args.length];
+ for (int i = 0; i < args.length; ++i) {
+ if (args[i] == null)
+ argStrings[i] = "<null>"; //$NON-NLS-1$
+ else
+ argStrings[i] = args[i].toString();
+ }
+ int lastI = 0;
+ for (int i = format.indexOf('{', 0); i >= 0; i = format.indexOf('{',
+ lastI)) {
+ if (i != 0 && format.charAt(i - 1) == '\\') {
+ // It's escaped, just print and loop.
+ if (i != 1)
+ answer.append(format.substring(lastI, i - 1));
+ answer.append('{');
+ lastI = i + 1;
+ } else {
+ // It's a format character.
+ if (i > format.length() - 3) {
+ // Bad format, just print and loop.
+ answer.append(format.substring(lastI, format.length()));
+ lastI = format.length();
+ } else {
+ int argnum = (byte) Character.digit(format.charAt(i + 1),
+ 10);
+ if (argnum < 0 || format.charAt(i + 2) != '}') {
+ // Bad format, just print and loop.
+ answer.append(format.substring(lastI, i + 1));
+ lastI = i + 1;
+ } else {
+ // Got a good one!
+ answer.append(format.substring(lastI, i));
+ if (argnum >= argStrings.length)
+ answer.append("<missing argument>"); //$NON-NLS-1$
+ else
+ answer.append(argStrings[argnum]);
+ lastI = i + 3;
+ }
+ }
+ }
+ }
+ if (lastI < format.length())
+ answer.append(format.substring(lastI, format.length()));
+ return answer.toString();
+ }
+
+ /**
+ * Changes the locale of the messages.
+ *
+ * @param locale
+ * Locale the locale to change to.
+ */
+ static public ResourceBundle setLocale(final Locale locale,
+ final String resource) {
+ try {
+ final ClassLoader loader = VM.bootCallerClassLoader();
+ return (ResourceBundle) AccessController
+ .doPrivileged(new PrivilegedAction<Object>() {
+ public Object run() {
+ return ResourceBundle.getBundle(resource, locale,
+ loader != null ? loader : ClassLoader.getSystemClassLoader());
+ }
+ });
+ } catch (MissingResourceException e) {
+ }
+ return null;
+ }
+
+ static {
+ // Attempt to load the messages.
+ try {
+ bundle = setLocale(Locale.getDefault(),
+ "org.apache.harmony.luni.internal.nls.messages"); //$NON-NLS-1$
+ } catch (Throwable e) {
+ e.printStackTrace();
+ }
+ }
+}
Propchange: incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/Messages.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/messages.properties
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/messages.properties?rev=437854&view=auto
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/messages.properties (added)
+++ incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/messages.properties Mon Aug 28 14:46:26 2006
@@ -0,0 +1,16 @@
+# Copyright 1998, 2006 The Apache Software Foundation or its licensors, as applicable
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# messages for EN locale
Propchange: incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/org/apache/harmony/luni/internal/nls/messages.properties
------------------------------------------------------------------------------
svn:eol-style = native
Modified: incubator/harmony/enhanced/classlib/trunk/modules/math/build.xml
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/math/build.xml?rev=437854&r1=437853&r2=437854&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/math/build.xml (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/math/build.xml Mon Aug 28 14:46:26 2006
@@ -32,10 +32,10 @@
</fileset>
<!-- Set build.compiler to "org.eclipse.jdt.core.JDTCompilerAdapter" to
- use the Eclipse Java compiler. -->
+ use the Eclipse Java compiler. -->
<property name="build.compiler" value="modern" />
- <target name="build" depends="compile.java, build.jar" />
+ <target name="build" depends="compile.java, copy.resources, build.jar" />
<target name="test" depends="build, compile.tests, run.tests" />
@@ -64,6 +64,15 @@
</fileset>
</bootclasspath>
</javac>
+ </target>
+
+ <target name="copy.resources">
+ <mkdir dir="${hy.build}" />
+ <copy todir="${hy.build}" includeemptydirs="false">
+ <fileset dir="${hy.math.src.main.java}">
+ <exclude name="**/*.java" />
+ </fileset>
+ </copy>
</target>
<target name="build.jar" depends="svn-info">
Modified: incubator/harmony/enhanced/classlib/trunk/modules/math/make/patternset.txt
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/math/make/patternset.txt?rev=437854&r1=437853&r2=437854&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/math/make/patternset.txt (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/math/make/patternset.txt Mon Aug 28 14:46:26 2006
@@ -1,16 +1,18 @@
-# Copyright 2005 The Apache Software Foundation or its licensors, as applicable
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-java/math/*
-com/ibm/oti/util/math/*
\ No newline at end of file
+# Copyright 2005 The Apache Software Foundation or its licensors, as applicable
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+java/math/*
+com/ibm/oti/util/math/*
+
+org/apache/harmony/math/internal/nls/*