1 /*
2 * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
37 * @since 1.6
38 */
39 public abstract class DateFormatProvider extends LocaleServiceProvider {
40
41 /**
42 * Sole constructor. (For invocation by subclass constructors, typically
43 * implicit.)
44 */
45 protected DateFormatProvider() {
46 }
47
48 /**
49 * Returns a new <code>DateFormat</code> instance which formats time
50 * with the given formatting style for the specified locale.
51 * @param style the given formatting style. Either one of
52 * {@link java.text.DateFormat#SHORT DateFormat.SHORT},
53 * {@link java.text.DateFormat#MEDIUM DateFormat.MEDIUM},
54 * {@link java.text.DateFormat#LONG DateFormat.LONG}, or
55 * {@link java.text.DateFormat#FULL DateFormat.FULL}.
56 * @param locale the desired locale.
57 * @exception IllegalArgumentException if <code>style</code> is invalid,
58 * or if <code>locale</code> isn't
59 * one of the locales returned from
60 * {@link java.util.spi.LocaleServiceProvider#getAvailableLocales()
61 * getAvailableLocales()}.
62 * @exception NullPointerException if <code>locale</code> is null
63 * @return a time formatter.
64 * @see java.text.DateFormat#getTimeInstance(int, java.util.Locale)
65 */
66 public abstract DateFormat getTimeInstance(int style, Locale locale);
67
68 /**
69 * Returns a new <code>DateFormat</code> instance which formats date
70 * with the given formatting style for the specified locale.
71 * @param style the given formatting style. Either one of
72 * {@link java.text.DateFormat#SHORT DateFormat.SHORT},
73 * {@link java.text.DateFormat#MEDIUM DateFormat.MEDIUM},
74 * {@link java.text.DateFormat#LONG DateFormat.LONG}, or
75 * {@link java.text.DateFormat#FULL DateFormat.FULL}.
76 * @param locale the desired locale.
77 * @exception IllegalArgumentException if <code>style</code> is invalid,
78 * or if <code>locale</code> isn't
79 * one of the locales returned from
80 * {@link java.util.spi.LocaleServiceProvider#getAvailableLocales()
81 * getAvailableLocales()}.
82 * @exception NullPointerException if <code>locale</code> is null
83 * @return a date formatter.
84 * @see java.text.DateFormat#getDateInstance(int, java.util.Locale)
85 */
86 public abstract DateFormat getDateInstance(int style, Locale locale);
87
88 /**
89 * Returns a new <code>DateFormat</code> instance which formats date and time
90 * with the given formatting style for the specified locale.
91 * @param dateStyle the given date formatting style. Either one of
92 * {@link java.text.DateFormat#SHORT DateFormat.SHORT},
93 * {@link java.text.DateFormat#MEDIUM DateFormat.MEDIUM},
94 * {@link java.text.DateFormat#LONG DateFormat.LONG}, or
95 * {@link java.text.DateFormat#FULL DateFormat.FULL}.
96 * @param timeStyle the given time formatting style. Either one of
97 * {@link java.text.DateFormat#SHORT DateFormat.SHORT},
98 * {@link java.text.DateFormat#MEDIUM DateFormat.MEDIUM},
99 * {@link java.text.DateFormat#LONG DateFormat.LONG}, or
100 * {@link java.text.DateFormat#FULL DateFormat.FULL}.
101 * @param locale the desired locale.
102 * @exception IllegalArgumentException if <code>dateStyle</code> or
103 * <code>timeStyle</code> is invalid,
104 * or if <code>locale</code> isn't
105 * one of the locales returned from
106 * {@link java.util.spi.LocaleServiceProvider#getAvailableLocales()
107 * getAvailableLocales()}.
108 * @exception NullPointerException if <code>locale</code> is null
109 * @return a date/time formatter.
110 * @see java.text.DateFormat#getDateTimeInstance(int, int, java.util.Locale)
111 */
112 public abstract DateFormat
113 getDateTimeInstance(int dateStyle, int timeStyle, Locale locale);
114 }
|
1 /*
2 * Copyright (c) 2005, 2019, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
37 * @since 1.6
38 */
39 public abstract class DateFormatProvider extends LocaleServiceProvider {
40
41 /**
42 * Sole constructor. (For invocation by subclass constructors, typically
43 * implicit.)
44 */
45 protected DateFormatProvider() {
46 }
47
48 /**
49 * Returns a new <code>DateFormat</code> instance which formats time
50 * with the given formatting style for the specified locale.
51 * @param style the given formatting style. Either one of
52 * {@link java.text.DateFormat#SHORT DateFormat.SHORT},
53 * {@link java.text.DateFormat#MEDIUM DateFormat.MEDIUM},
54 * {@link java.text.DateFormat#LONG DateFormat.LONG}, or
55 * {@link java.text.DateFormat#FULL DateFormat.FULL}.
56 * @param locale the desired locale.
57 * @throws IllegalArgumentException if <code>style</code> is invalid,
58 * or if <code>locale</code> isn't
59 * one of the locales returned from
60 * {@link java.util.spi.LocaleServiceProvider#getAvailableLocales()
61 * getAvailableLocales()}.
62 * @throws NullPointerException if <code>locale</code> is null
63 * @return a time formatter.
64 * @see java.text.DateFormat#getTimeInstance(int, java.util.Locale)
65 */
66 public abstract DateFormat getTimeInstance(int style, Locale locale);
67
68 /**
69 * Returns a new <code>DateFormat</code> instance which formats date
70 * with the given formatting style for the specified locale.
71 * @param style the given formatting style. Either one of
72 * {@link java.text.DateFormat#SHORT DateFormat.SHORT},
73 * {@link java.text.DateFormat#MEDIUM DateFormat.MEDIUM},
74 * {@link java.text.DateFormat#LONG DateFormat.LONG}, or
75 * {@link java.text.DateFormat#FULL DateFormat.FULL}.
76 * @param locale the desired locale.
77 * @throws IllegalArgumentException if <code>style</code> is invalid,
78 * or if <code>locale</code> isn't
79 * one of the locales returned from
80 * {@link java.util.spi.LocaleServiceProvider#getAvailableLocales()
81 * getAvailableLocales()}.
82 * @throws NullPointerException if <code>locale</code> is null
83 * @return a date formatter.
84 * @see java.text.DateFormat#getDateInstance(int, java.util.Locale)
85 */
86 public abstract DateFormat getDateInstance(int style, Locale locale);
87
88 /**
89 * Returns a new <code>DateFormat</code> instance which formats date and time
90 * with the given formatting style for the specified locale.
91 * @param dateStyle the given date formatting style. Either one of
92 * {@link java.text.DateFormat#SHORT DateFormat.SHORT},
93 * {@link java.text.DateFormat#MEDIUM DateFormat.MEDIUM},
94 * {@link java.text.DateFormat#LONG DateFormat.LONG}, or
95 * {@link java.text.DateFormat#FULL DateFormat.FULL}.
96 * @param timeStyle the given time formatting style. Either one of
97 * {@link java.text.DateFormat#SHORT DateFormat.SHORT},
98 * {@link java.text.DateFormat#MEDIUM DateFormat.MEDIUM},
99 * {@link java.text.DateFormat#LONG DateFormat.LONG}, or
100 * {@link java.text.DateFormat#FULL DateFormat.FULL}.
101 * @param locale the desired locale.
102 * @throws IllegalArgumentException if <code>dateStyle</code> or
103 * <code>timeStyle</code> is invalid,
104 * or if <code>locale</code> isn't
105 * one of the locales returned from
106 * {@link java.util.spi.LocaleServiceProvider#getAvailableLocales()
107 * getAvailableLocales()}.
108 * @throws NullPointerException if <code>locale</code> is null
109 * @return a date/time formatter.
110 * @see java.text.DateFormat#getDateTimeInstance(int, int, java.util.Locale)
111 */
112 public abstract DateFormat
113 getDateTimeInstance(int dateStyle, int timeStyle, Locale locale);
114 }
|