summaryrefslogtreecommitdiff
path: root/libjava/classpath/java/text/spi
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/classpath/java/text/spi')
-rw-r--r--libjava/classpath/java/text/spi/BreakIteratorProvider.java124
-rw-r--r--libjava/classpath/java/text/spi/CollatorProvider.java79
-rw-r--r--libjava/classpath/java/text/spi/DateFormatProvider.java129
-rw-r--r--libjava/classpath/java/text/spi/DateFormatSymbolsProvider.java79
-rw-r--r--libjava/classpath/java/text/spi/DecimalFormatSymbolsProvider.java79
-rw-r--r--libjava/classpath/java/text/spi/NumberFormatProvider.java129
-rw-r--r--libjava/classpath/java/text/spi/package.html50
7 files changed, 669 insertions, 0 deletions
diff --git a/libjava/classpath/java/text/spi/BreakIteratorProvider.java b/libjava/classpath/java/text/spi/BreakIteratorProvider.java
new file mode 100644
index 000000000..7e5e056b8
--- /dev/null
+++ b/libjava/classpath/java/text/spi/BreakIteratorProvider.java
@@ -0,0 +1,124 @@
+/* BreakIteratorProvider.java -- Providers of localized instances
+ Copyright (C) 2007 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath 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.
+
+GNU Classpath 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 GNU Classpath; 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 java.text.spi;
+
+import java.text.BreakIterator;
+
+import java.util.Locale;
+
+import java.util.spi.LocaleServiceProvider;
+
+/**
+ * A {@link BreakIteratorProvider} provides localized
+ * instances of {@link java.text.BreakIterator}.
+ *
+ * @author Andrew John Hughes (gnu_andrew@member.fsf.org)
+ * @since 1.6
+ */
+public abstract class BreakIteratorProvider
+ extends LocaleServiceProvider
+{
+
+ /**
+ * Constructs a new {@link BreakIteratorProvider}.
+ * Provided for implicit invocation by subclasses.
+ */
+ protected BreakIteratorProvider()
+ {
+ }
+
+ /**
+ * Returns a {@link java.text.BreakIterator} instance
+ * for character breaks in the specified
+ * {@link java.util.Locale}.
+ *
+ * @param locale the desired locale.
+ * @return the localized instance for character breaks.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.BreakIterator#getCharacterInstance(java.util.Locale)
+ */
+ public abstract BreakIterator getCharacterInstance(Locale locale);
+
+ /**
+ * Returns a {@link java.text.BreakIterator} instance
+ * for line breaks in the specified {@link java.util.Locale}.
+ *
+ * @param locale the desired locale.
+ * @return the localized instance for line breaks.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.BreakIterator#getLineInstance(java.util.Locale)
+ */
+ public abstract BreakIterator getLineInstance(Locale locale);
+
+ /**
+ * Returns a {@link java.text.BreakIterator} instance
+ * for sentence breaks in the specified
+ * {@link java.util.Locale}.
+ *
+ * @param locale the desired locale.
+ * @return the localized instance for sentence breaks.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.BreakIterator#getSentenceInstance(java.util.Locale)
+ */
+ public abstract BreakIterator getSentenceInstance(Locale locale);
+
+ /**
+ * Returns a {@link java.text.BreakIterator} instance
+ * for word breaks in the specified
+ * {@link java.util.Locale}.
+ *
+ * @param locale the desired locale.
+ * @return the localized instance for word breaks.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.BreakIterator#getWordInstance(java.util.Locale)
+ */
+ public abstract BreakIterator getWordInstance(Locale locale);
+
+}
diff --git a/libjava/classpath/java/text/spi/CollatorProvider.java b/libjava/classpath/java/text/spi/CollatorProvider.java
new file mode 100644
index 000000000..6d6f40939
--- /dev/null
+++ b/libjava/classpath/java/text/spi/CollatorProvider.java
@@ -0,0 +1,79 @@
+/* CollatorProvider.java -- Providers of localized instances
+ Copyright (C) 2007 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath 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.
+
+GNU Classpath 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 GNU Classpath; 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 java.text.spi;
+
+import java.text.Collator;
+
+import java.util.Locale;
+
+import java.util.spi.LocaleServiceProvider;
+
+/**
+ * A {@link CollatorProvider} provides localized
+ * instances of {@link java.text.Collator}.
+ *
+ * @author Andrew John Hughes (gnu_andrew@member.fsf.org)
+ * @since 1.6
+ */
+public abstract class CollatorProvider
+ extends LocaleServiceProvider
+{
+
+ /**
+ * Constructs a new {@link CollatorProvider}.
+ * Provided for implicit invocation by subclasses.
+ */
+ protected CollatorProvider()
+ {
+ }
+
+ /**
+ * Returns a {@link java.text.Collator} instance
+ * for the specified {@link java.util.Locale}.
+ *
+ * @param locale the desired locale.
+ * @return the localized instance.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.Collator#getInstance(java.util.Locale)
+ */
+ public abstract Collator getInstance(Locale locale);
+
+}
diff --git a/libjava/classpath/java/text/spi/DateFormatProvider.java b/libjava/classpath/java/text/spi/DateFormatProvider.java
new file mode 100644
index 000000000..ea7ecd39e
--- /dev/null
+++ b/libjava/classpath/java/text/spi/DateFormatProvider.java
@@ -0,0 +1,129 @@
+/* DateFormatProvider.java -- Providers of localized instances
+ Copyright (C) 2007 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath 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.
+
+GNU Classpath 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 GNU Classpath; 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 java.text.spi;
+
+import java.text.DateFormat;
+
+import java.util.Locale;
+
+import java.util.spi.LocaleServiceProvider;
+
+/**
+ * A {@link DateFormatProvider} provides localized
+ * instances of {@link java.text.DateFormat}.
+ *
+ * @author Andrew John Hughes (gnu_andrew@member.fsf.org)
+ * @since 1.6
+ */
+public abstract class DateFormatProvider
+ extends LocaleServiceProvider
+{
+
+ /**
+ * Constructs a new {@link DateFormatProvider}.
+ * Provided for implicit invocation by subclasses.
+ */
+ protected DateFormatProvider()
+ {
+ }
+
+ /**
+ * Returns a {@link java.text.DateFormat} instance
+ * for formatting dates with the given style in the specified
+ * {@link java.util.Locale}.
+ *
+ * @param style the formatting style; one of {@link DateFormat#SHORT},
+ * {@link DateFormat#MEDIUM}, {@link DateFormat#LONG}
+ * or {@link DateFormat#FULL}.
+ * @param locale the desired locale.
+ * @return the localized instance for formatting dates.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the style is invalid or
+ * the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.DateFormat#getDateInstance(int,java.util.Locale)
+ */
+ public abstract DateFormat getDateInstance(int style,
+ Locale locale);
+
+ /**
+ * Returns a {@link java.text.DateFormat} instance
+ * for formatting dates and times with the given style in the
+ * specified {@link java.util.Locale}.
+ *
+ * @param dateStyle the date formatting style; one of
+ * {@link DateFormat#SHORT}, {@link DateFormat#MEDIUM},
+ * {@link DateFormat#LONG} or {@link DateFormat#FULL}.
+ * @param timeStyle the time formatting style; one of
+ * {@link DateFormat#SHORT}, {@link DateFormat#MEDIUM},
+ * {@link DateFormat#LONG} or {@link DateFormat#FULL}.
+ * @param locale the desired locale.
+ * @return the localized instance for formatting dates.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if either style is invalid or
+ * the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.DateFormat#getDateInstance(java.util.Locale)
+ */
+ public abstract DateFormat getDateTimeInstance(int dateStyle,
+ int timeStyle,
+ Locale locale);
+
+ /**
+ * Returns a {@link java.text.DateFormat} instance
+ * for formatting times with the given style in the specified
+ * {@link java.util.Locale}.
+ *
+ * @param style the formatting style; one of {@link DateFormat#SHORT},
+ * {@link DateFormat#MEDIUM}, {@link DateFormat#LONG}
+ * or {@link DateFormat#FULL}.
+ * @param locale the desired locale.
+ * @return the localized instance for formatting times.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the style is invalid or
+ * the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.DateFormat#getTimeInstance(int,java.util.Locale)
+ */
+ public abstract DateFormat getTimeInstance(int style,
+ Locale locale);
+
+}
diff --git a/libjava/classpath/java/text/spi/DateFormatSymbolsProvider.java b/libjava/classpath/java/text/spi/DateFormatSymbolsProvider.java
new file mode 100644
index 000000000..a0e97595f
--- /dev/null
+++ b/libjava/classpath/java/text/spi/DateFormatSymbolsProvider.java
@@ -0,0 +1,79 @@
+/* DateFormatSymbolsProvider.java -- Providers of localized instances
+ Copyright (C) 2007 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath 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.
+
+GNU Classpath 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 GNU Classpath; 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 java.text.spi;
+
+import java.text.DateFormatSymbols;
+
+import java.util.Locale;
+
+import java.util.spi.LocaleServiceProvider;
+
+/**
+ * A {@link DateFormatSymbolsProvider} provides localized
+ * instances of {@link java.text.DateFormatSymbols}.
+ *
+ * @author Andrew John Hughes (gnu_andrew@member.fsf.org)
+ * @since 1.6
+ */
+public abstract class DateFormatSymbolsProvider
+ extends LocaleServiceProvider
+{
+
+ /**
+ * Constructs a new {@link DateFormatSymbolsProvider}.
+ * Provided for implicit invocation by subclasses.
+ */
+ protected DateFormatSymbolsProvider()
+ {
+ }
+
+ /**
+ * Returns a {@link java.text.DateFormatSymbols} instance
+ * for the specified {@link java.util.Locale}.
+ *
+ * @param locale the locale to express the symbols in.
+ * @return the localized instance.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.DateFormatSymbols#getInstance(java.util.Locale)
+ */
+ public abstract DateFormatSymbols getInstance(Locale locale);
+
+}
diff --git a/libjava/classpath/java/text/spi/DecimalFormatSymbolsProvider.java b/libjava/classpath/java/text/spi/DecimalFormatSymbolsProvider.java
new file mode 100644
index 000000000..d772b1eee
--- /dev/null
+++ b/libjava/classpath/java/text/spi/DecimalFormatSymbolsProvider.java
@@ -0,0 +1,79 @@
+/* DecimalFormatSymbolsProvider.java -- Providers of localized instances
+ Copyright (C) 2007 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath 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.
+
+GNU Classpath 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 GNU Classpath; 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 java.text.spi;
+
+import java.text.DecimalFormatSymbols;
+
+import java.util.Locale;
+
+import java.util.spi.LocaleServiceProvider;
+
+/**
+ * A {@link DecimalFormatSymbolsProvider} provides localized
+ * instances of {@link java.text.DecimalFormatSymbols}.
+ *
+ * @author Andrew John Hughes (gnu_andrew@member.fsf.org)
+ * @since 1.6
+ */
+public abstract class DecimalFormatSymbolsProvider
+ extends LocaleServiceProvider
+{
+
+ /**
+ * Constructs a new {@link DecimalFormatSymbolsProvider}.
+ * Provided for implicit invocation by subclasses.
+ */
+ protected DecimalFormatSymbolsProvider()
+ {
+ }
+
+ /**
+ * Returns a {@link java.text.DecimalFormatSymbols} instance
+ * for the specified {@link java.util.Locale}.
+ *
+ * @param locale the locale to express the symbols in.
+ * @return the localized instance.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.DecimalFormatSymbols#getInstance(java.util.Locale)
+ */
+ public abstract DecimalFormatSymbols getInstance(Locale locale);
+
+}
diff --git a/libjava/classpath/java/text/spi/NumberFormatProvider.java b/libjava/classpath/java/text/spi/NumberFormatProvider.java
new file mode 100644
index 000000000..e8a72e44c
--- /dev/null
+++ b/libjava/classpath/java/text/spi/NumberFormatProvider.java
@@ -0,0 +1,129 @@
+/* NumberFormatProvider.java -- Providers of localized instances
+ Copyright (C) 2007 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath 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.
+
+GNU Classpath 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 GNU Classpath; 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 java.text.spi;
+
+import java.text.NumberFormat;
+
+import java.util.Locale;
+
+import java.util.spi.LocaleServiceProvider;
+
+/**
+ * A {@link NumberFormatProvider} provides localized
+ * instances of {@link java.text.NumberFormat}.
+ *
+ * @author Andrew John Hughes (gnu_andrew@member.fsf.org)
+ * @since 1.6
+ */
+public abstract class NumberFormatProvider
+ extends LocaleServiceProvider
+{
+
+ /**
+ * Constructs a new {@link NumberFormatProvider}.
+ * Provided for implicit invocation by subclasses.
+ */
+ protected NumberFormatProvider()
+ {
+ }
+
+ /**
+ * Returns a {@link java.text.NumberFormat} instance
+ * for monetary values in the specified
+ * {@link java.util.Locale}.
+ *
+ * @param locale the desired locale.
+ * @return the localized instance for monetary values.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.NumberFormat#getCurrencyInstance(java.util.Locale)
+ */
+ public abstract NumberFormat getCurrencyInstance(Locale locale);
+
+ /**
+ * Returns a {@link java.text.NumberFormat} instance
+ * for integers in the specified {@link java.util.Locale}.
+ * The returned instance should be configured to round
+ * floating point numbers to the nearest integer using
+ * {@link java.math.RoundingMode#HALF_EVEN} rounding,
+ * and to parse only the integer part of a number.
+ *
+ * @param locale the desired locale.
+ * @return the localized instance for integers.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.NumberFormat#getIntegerInstance(java.util.Locale)
+ * @see java.math.RoundingMode#HALF_EVEN
+ * @see java.text.NumberFormat#isParseIntegerOnly()
+ */
+ public abstract NumberFormat getIntegerInstance(Locale locale);
+
+ /**
+ * Returns a general-purpose {@link java.text.NumberFormat}
+ * instance in the specified {@link java.util.Locale}.
+ *
+ * @param locale the desired locale.
+ * @return a general-purpose localized instance.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.NumberFormat#getNumberInstance(java.util.Locale)
+ */
+ public abstract NumberFormat getNumberInstance(Locale locale);
+
+ /**
+ * Returns a {@link java.text.NumberFormat} instance
+ * for percentage values in the specified
+ * {@link java.util.Locale}.
+ *
+ * @param locale the desired locale.
+ * @return the localized instance for percentage values.
+ * @throws NullPointerException if the locale is null.
+ * @throws IllegalArgumentException if the locale is not one
+ * returned by
+ * {@link getAvailableLocales()}
+ * @see java.text.NumberFormat#getPercentInstance(java.util.Locale)
+ */
+ public abstract NumberFormat getPercentInstance(Locale locale);
+
+}
diff --git a/libjava/classpath/java/text/spi/package.html b/libjava/classpath/java/text/spi/package.html
new file mode 100644
index 000000000..7f5232ce0
--- /dev/null
+++ b/libjava/classpath/java/text/spi/package.html
@@ -0,0 +1,50 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html - describes classes in java.text.spi package.
+ Copyright (C) 2007 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath 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.
+
+GNU Classpath 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 GNU Classpath; 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. -->
+
+<html>
+<head><title>GNU Classpath - java.text.spi</title></head>
+
+<body>
+
+<p>
+A series of service provider interfaces for use by the
+classes in <code>java.text</code>.
+</p>
+<p><span style="font-weight: bold;">Since</span>: 1.6</p>
+</body>
+</html>