From 9dad40f1d64912130dcf85e23752ee67165b5187 Mon Sep 17 00:00:00 2001
From: Yoshito Umaoka Sample code for the ICU Bidi API
@@ -470,8 +469,7 @@ public class Bidi {
* the original source text).
* @see #REORDER_INVERSE_LIKE_DIRECT
* @see #REORDER_INVERSE_FOR_NUMBERS_SPECIAL
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final byte LEVEL_DEFAULT_LTR = (byte)0x7e;
@@ -498,24 +496,21 @@ public class Bidi {
* the original source text).
* @see #REORDER_INVERSE_LIKE_DIRECT
* @see #REORDER_INVERSE_FOR_NUMBERS_SPECIAL
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final byte LEVEL_DEFAULT_RTL = (byte)0x7f;
/**
* Maximum explicit embedding level.
* (The maximum resolved level can be up to MAX_EXPLICIT_LEVEL+1
).
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final byte MAX_EXPLICIT_LEVEL = 61;
/**
* Bit flag for level input.
* Overrides directional properties.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final byte LEVEL_OVERRIDE = (byte)0x80;
@@ -533,27 +528,25 @@ public class Bidi {
* @see #getLogicalMap
* @see #OPTION_INSERT_MARKS
* @see #OPTION_REMOVE_CONTROLS
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int MAP_NOWHERE = -1;
/**
* All left-to-right text.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final byte LTR = 0;
+
/**
* All right-to-left text.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final byte RTL = 1;
+
/**
* Mixed-directional text.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final byte MIXED = 2;
@@ -562,8 +555,7 @@ public class Bidi {
* keep combining characters after their base characters in RTL runs
*
* @see #writeReordered
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final short KEEP_BASE_COMBINING = 1;
@@ -573,8 +565,7 @@ public class Bidi {
* by their mirror-image mappings
*
* @see #writeReordered
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final short DO_MIRRORING = 2;
@@ -588,8 +579,7 @@ public class Bidi {
*
* @see #setInverse
* @see #writeReordered
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final short INSERT_LRM_FOR_NUMERIC = 4;
@@ -603,8 +593,7 @@ public class Bidi {
*
* @see #writeReordered
* @see #INSERT_LRM_FOR_NUMERIC
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final short REMOVE_BIDI_CONTROLS = 8;
@@ -620,31 +609,27 @@ public class Bidi {
* is designed for RTL scripts and stores text in reverse order.
setInverse(true)
.
* @see #setInverse
* @see #setReorderingMode
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final short REORDER_INVERSE_NUMBERS_AS_L = 4;
/** Reordering mode: Visual to Logical algorithm equivalent to the regular
* Logical to Visual algorithm.
* @see #setReorderingMode
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final short REORDER_INVERSE_LIKE_DIRECT = 5;
/** Reordering mode: Inverse Bidi (Visual to Logical) algorithm for the
* REORDER_NUMBERS_SPECIAL
Bidi algorithm.
* @see #setReorderingMode
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final short REORDER_INVERSE_FOR_NUMBERS_SPECIAL = 6;
@@ -699,8 +680,7 @@ public class Bidi {
* Option value for setReorderingOptions
:
* disable all the options which can be set with this method
* @see #setReorderingOptions
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int OPTION_DEFAULT = 0;
@@ -754,8 +734,7 @@ public class Bidi {
* @see #REORDER_INVERSE_NUMBERS_AS_L
* @see #REORDER_INVERSE_LIKE_DIRECT
* @see #REORDER_INVERSE_FOR_NUMBERS_SPECIAL
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int OPTION_INSERT_MARKS = 1;
@@ -777,8 +756,7 @@ public class Bidi {
* @see #OPTION_INSERT_MARKS
* @see #INSERT_LRM_FOR_NUMERIC
* @see #REMOVE_BIDI_CONTROLS
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int OPTION_REMOVE_CONTROLS = 2;
@@ -827,8 +805,7 @@ public class Bidi {
* @see #setReorderingOptions
* @see #getProcessedLength
* @see #orderParagraphsLTR
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int OPTION_STREAMING = 4;
@@ -863,8 +840,7 @@ public class Bidi {
* Value returned by BidiClassifier
when there is no need to
* override the standard Bidi class for a given code point.
* @see BidiClassifier
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int CLASS_DEFAULT = UCharacterDirection
.CHAR_DIRECTION_COUNT;
@@ -1128,8 +1104,7 @@ public class Bidi {
* setPara()
and setLine()
will allocate
* additional memory for internal structures as necessary.
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Bidi()
{
@@ -1164,8 +1139,7 @@ public class Bidi {
* 1 and maxLength
. It is typically small.
*
* @throws IllegalArgumentException if maxLength or maxRunCount is less than 0
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Bidi(int maxLength, int maxRunCount)
{
@@ -1352,8 +1326,7 @@ public class Bidi {
* @see #setReorderingMode
* @see #REORDER_INVERSE_NUMBERS_AS_L
* @see #REORDER_DEFAULT
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setInverse(boolean isInverse) {
this.isInverse = (isInverse);
@@ -1376,8 +1349,7 @@ public class Bidi {
* @see #setInverse
* @see #setReorderingMode
* @see #REORDER_INVERSE_NUMBERS_AS_L
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean isInverse() {
return isInverse;
@@ -1543,8 +1515,7 @@ public class Bidi {
* @see #REORDER_INVERSE_NUMBERS_AS_L
* @see #REORDER_INVERSE_LIKE_DIRECT
* @see #REORDER_INVERSE_FOR_NUMBERS_SPECIAL
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setReorderingMode(int reorderingMode) {
if ((reorderingMode < REORDER_DEFAULT) ||
@@ -1561,8 +1532,7 @@ public class Bidi {
* @return the current reordering mode of the Bidi object
*
* @see #setReorderingMode
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getReorderingMode() {
return this.reorderingMode;
@@ -1582,8 +1552,7 @@ public class Bidi {
* @see #OPTION_INSERT_MARKS
* @see #OPTION_REMOVE_CONTROLS
* @see #OPTION_STREAMING
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setReorderingOptions(int options) {
if ((options & OPTION_REMOVE_CONTROLS) != 0) {
@@ -1599,8 +1568,7 @@ public class Bidi {
* @return the current reordering options of the Bidi object
*
* @see #setReorderingOptions
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getReorderingOptions() {
return this.reorderingOptions;
@@ -2980,8 +2948,7 @@ public class Bidi {
* @see #LEVEL_DEFAULT_RTL
* @see #LEVEL_OVERRIDE
* @see #MAX_EXPLICIT_LEVEL
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setPara(String text, byte paraLevel, byte[] embeddingLevels)
{
@@ -3065,8 +3032,7 @@ public class Bidi {
* @see #LEVEL_DEFAULT_RTL
* @see #LEVEL_OVERRIDE
* @see #MAX_EXPLICIT_LEVEL
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setPara(char[] chars, byte paraLevel, byte[] embeddingLevels)
{
@@ -3386,8 +3352,7 @@ public class Bidi {
*
* @param paragraph a paragraph of text with optional character and
* paragraph attribute information
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setPara(AttributedCharacterIterator paragraph)
{
@@ -3452,8 +3417,7 @@ public class Bidi {
* receive level 0, so that successive paragraphs progress from left to right.
*
* @see #setPara
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void orderParagraphsLTR(boolean ordarParaLTR) {
orderParagraphsLTR = ordarParaLTR;
@@ -3467,8 +3431,7 @@ public class Bidi {
* allocate level 0 to block separators.
*
* @see #orderParagraphsLTR
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean isOrderParagraphsLTR() {
return orderParagraphsLTR;
@@ -3488,8 +3451,7 @@ public class Bidi {
* @see #LTR
* @see #RTL
* @see #MIXED
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public byte getDirection()
{
@@ -3508,8 +3470,7 @@ public class Bidi {
*
* @see #setPara
* @see #setLine
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public String getTextAsString()
{
@@ -3528,8 +3489,7 @@ public class Bidi {
*
* @see #setPara
* @see #setLine
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public char[] getText()
{
@@ -3545,8 +3505,7 @@ public class Bidi {
*
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
or setLine
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getLength()
{
@@ -3592,8 +3551,7 @@ public class Bidi {
*
* @see #setPara
* @see #OPTION_STREAMING
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getProcessedLength() {
verifyValidParaOrLine();
@@ -3627,8 +3585,7 @@ public class Bidi {
* @see #OPTION_INSERT_MARKS
* @see #OPTION_REMOVE_CONTROLS
* @see #REORDER_INVERSE_NUMBERS_AS_L
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getResultLength() {
verifyValidParaOrLine();
@@ -3652,8 +3609,7 @@ public class Bidi {
* @see #LEVEL_DEFAULT_RTL
* @see #getParagraph
* @see #getParagraphByIndex
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public byte getParaLevel()
{
@@ -3668,8 +3624,7 @@ public class Bidi {
*
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
or setLine
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int countParagraphs()
{
@@ -3697,8 +3652,7 @@ public class Bidi {
* [0..countParagraphs()-1]
*
* @see com.ibm.icu.text.BidiRun
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public BidiRun getParagraphByIndex(int paraIndex)
{
@@ -3741,8 +3695,7 @@ public class Bidi {
* @see com.ibm.icu.text.BidiRun
* @see #getParagraphByIndex
* @see #getProcessedLength
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public BidiRun getParagraph(int charIndex)
{
@@ -3770,8 +3723,7 @@ public class Bidi {
*
* @see com.ibm.icu.text.BidiRun
* @see #getProcessedLength
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getParagraphIndex(int charIndex)
{
@@ -3791,8 +3743,7 @@ public class Bidi {
* @param classifier A new custom classifier. This can be null.
*
* @see #getCustomClassifier
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setCustomClassifier(BidiClassifier classifier) {
this.customClassifier = classifier;
@@ -3805,8 +3756,7 @@ public class Bidi {
* @return An instance of class BidiClassifier
*
* @see #setCustomClassifier
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public BidiClassifier getCustomClassifier() {
return this.customClassifier;
@@ -3824,8 +3774,7 @@ public class Bidi {
* for this Bidi
instance.
*
* @see BidiClassifier
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getCustomizedClass(int c) {
int dir;
@@ -3875,8 +3824,7 @@ public class Bidi {
*
* @see #setPara
* @see #getProcessedLength
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Bidi setLine(int start, int limit)
{
@@ -3903,8 +3851,7 @@ public class Bidi {
* 0<=charIndex<getProcessedLength()
*
* @see #getProcessedLength
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public byte getLevelAt(int charIndex)
{
@@ -3924,8 +3871,7 @@ public class Bidi {
*
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
or setLine
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public byte[] getLevels()
{
@@ -3959,8 +3905,7 @@ public class Bidi {
* @see com.ibm.icu.text.BidiRun#getLimit()
* @see com.ibm.icu.text.BidiRun#getEmbeddingLevel()
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public BidiRun getLogicalRun(int logicalPosition)
{
@@ -3981,8 +3926,7 @@ public class Bidi {
*
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
or setLine
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int countRuns()
{
@@ -4053,8 +3997,7 @@ public class Bidi {
* @see com.ibm.icu.text.BidiRun#getStart()
* @see com.ibm.icu.text.BidiRun#getLength()
* @see com.ibm.icu.text.BidiRun#getEmbeddingLevel()
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public BidiRun getVisualRun(int runIndex)
{
@@ -4104,8 +4047,7 @@ public class Bidi {
* @see #MAP_NOWHERE
* @see #OPTION_REMOVE_CONTROLS
* @see #writeReordered
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getVisualIndex(int logicalIndex)
{
@@ -4150,8 +4092,7 @@ public class Bidi {
* @see #MAP_NOWHERE
* @see #OPTION_INSERT_MARKS
* @see #writeReordered
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getLogicalIndex(int visualIndex)
{
@@ -4207,8 +4148,7 @@ public class Bidi {
* @see #MAP_NOWHERE
* @see #OPTION_REMOVE_CONTROLS
* @see #writeReordered
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int[] getLogicalMap()
{
@@ -4250,8 +4190,7 @@ public class Bidi {
* @see #MAP_NOWHERE
* @see #OPTION_INSERT_MARKS
* @see #writeReordered
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int[] getVisualMap()
{
@@ -4279,8 +4218,7 @@ public class Bidi {
* indexMap[logicalIndex]==visualIndex
, where
* indexMap
represents the returned array.
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static int[] reorderLogical(byte[] levels)
{
@@ -4303,8 +4241,7 @@ public class Bidi {
* indexMap[visualIndex]==logicalIndex
, where
* indexMap
represents the returned array.
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static int[] reorderVisual(byte[] levels)
{
@@ -4343,8 +4280,7 @@ public class Bidi {
* inverse map will have a value equal to MAP_NOWHERE
.
*
* @see #MAP_NOWHERE
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static int[] invertMap(int[] srcMap)
{
@@ -4361,15 +4297,13 @@ public class Bidi {
/**
* Constant indicating base direction is left-to-right.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int DIRECTION_LEFT_TO_RIGHT = LTR;
/**
* Constant indicating base direction is right-to-left.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int DIRECTION_RIGHT_TO_LEFT = RTL;
@@ -4378,8 +4312,7 @@ public class Bidi {
* directional character in the text according to the Unicode Bidirectional
* Algorithm. If no strong directional character is present, the base
* direction is left-to-right.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int DIRECTION_DEFAULT_LEFT_TO_RIGHT = LEVEL_DEFAULT_LTR;
@@ -4388,8 +4321,7 @@ public class Bidi {
* directional character in the text according to the Unicode Bidirectional
* Algorithm. If no strong directional character is present, the base
* direction is right-to-left.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int DIRECTION_DEFAULT_RIGHT_TO_LEFT = LEVEL_DEFAULT_RTL;
@@ -4405,8 +4337,7 @@ public class Bidi {
* @see #DIRECTION_RIGHT_TO_LEFT
* @see #DIRECTION_DEFAULT_LEFT_TO_RIGHT
* @see #DIRECTION_DEFAULT_RIGHT_TO_LEFT
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Bidi(String paragraph, int flags)
{
@@ -4439,8 +4370,7 @@ public class Bidi {
*
* @param paragraph a paragraph of text with optional character and
* paragraph attribute information
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Bidi(AttributedCharacterIterator paragraph)
{
@@ -4481,8 +4411,7 @@ public class Bidi {
* @see #DIRECTION_RIGHT_TO_LEFT
* @see #DIRECTION_DEFAULT_LEFT_TO_RIGHT
* @see #DIRECTION_DEFAULT_RIGHT_TO_LEFT
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Bidi(char[] text,
int textStart,
@@ -4551,8 +4480,7 @@ public class Bidi {
* @throws IllegalArgumentException if lineStart and lineLimit are not in the range
* 0<=lineStart<lineLimit<=getProcessedLength()
,
* or if the specified line crosses a paragraph boundary
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Bidi createLineBidi(int lineStart, int lineLimit)
{
@@ -4568,8 +4496,7 @@ public class Bidi {
*
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean isMixed()
{
@@ -4585,8 +4512,7 @@ public class Bidi {
*
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean isLeftToRight()
{
@@ -4602,8 +4528,7 @@ public class Bidi {
*
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean isRightToLeft()
{
@@ -4618,8 +4543,7 @@ public class Bidi {
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
or setLine
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean baseIsLeftToRight()
{
@@ -4634,8 +4558,7 @@ public class Bidi {
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
or setLine
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getBaseLevel()
{
@@ -4650,8 +4573,7 @@ public class Bidi {
* @throws IllegalStateException if this call is not preceded by a successful
* call to setPara
or setLine
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getRunCount()
{
@@ -4695,8 +4617,7 @@ public class Bidi {
* call to setPara
or setLine
* @throws IllegalArgumentException if run
is not in
* the range 0<=run<countRuns()
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getRunLevel(int run)
{
@@ -4719,8 +4640,7 @@ public class Bidi {
* call to setPara
or setLine
* @throws IllegalArgumentException if run
is not in
* the range 0<=run<countRuns()
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getRunStart(int run)
{
@@ -4744,8 +4664,7 @@ public class Bidi {
* call to setPara
or setLine
* @throws IllegalArgumentException if run
is not in
* the range 0<=run<countRuns()
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int getRunLimit(int run)
{
@@ -4772,8 +4691,7 @@ public class Bidi {
*
* @return true if the range of characters requires bidi analysis
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static boolean requiresBidi(char[] text,
int start,
@@ -4808,8 +4726,7 @@ public class Bidi {
* @param objects the array of objects to be reordered into visual order
* @param objectStart the start position in the objects array
* @param count the number of objects to reorder
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static void reorderVisually(byte[] levels,
int levelStart,
@@ -4883,8 +4800,7 @@ public class Bidi {
* @see #REMOVE_BIDI_CONTROLS
* @see #OPTION_STREAMING
* @see #getProcessedLength
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public String writeReordered(int options)
{
@@ -4932,8 +4848,7 @@ public class Bidi {
* src.length()
.
*
* @throws IllegalArgumentException if src
is null.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static String writeReverse(String src, int options)
{
diff --git a/icu4j/src/com/ibm/icu/text/BidiClassifier.java b/icu4j/src/com/ibm/icu/text/BidiClassifier.java
index dee4725cfe..37c3731ad5 100644
--- a/icu4j/src/com/ibm/icu/text/BidiClassifier.java
+++ b/icu4j/src/com/ibm/icu/text/BidiClassifier.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
- * Copyright (C) 2000-2007, International Business Machines Corporation and *
+ * Copyright (C) 2000-2009, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
@@ -32,8 +32,7 @@ package com.ibm.icu.text;
* to be determined.
*
* @see Bidi#setCustomClassifier
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public /*abstract*/ class BidiClassifier {
@@ -45,16 +44,14 @@ public /*abstract*/ class BidiClassifier {
* For instance, this object can be used to save a reference to
* a previous custom BidiClassifier while setting a new one, so as to
* allow chaining between them.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
protected Object context;
/**
* @param context Context for this classifier instance.
* May be null.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public BidiClassifier(Object context) {
this.context = context;
@@ -66,8 +63,7 @@ public /*abstract*/ class BidiClassifier {
*
* @param context Context for this classifier instance.
* May be null.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setContext(Object context) {
this.context = context;
@@ -75,8 +71,7 @@ public /*abstract*/ class BidiClassifier {
/**
* Returns the current classifier context.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Object getContext() {
return this.context;
@@ -93,8 +88,7 @@ public /*abstract*/ class BidiClassifier {
* that there is no need to override the standard Bidi class for
* the given code point.
* @see Bidi#CLASS_DEFAULT
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int classify(int c) {
return Bidi.CLASS_DEFAULT;
diff --git a/icu4j/src/com/ibm/icu/text/BidiRun.java b/icu4j/src/com/ibm/icu/text/BidiRun.java
index 83b81087da..3bb04b73da 100644
--- a/icu4j/src/com/ibm/icu/text/BidiRun.java
+++ b/icu4j/src/com/ibm/icu/text/BidiRun.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
-* Copyright (C) 2001-2007, International Business Machines
+* Copyright (C) 2001-2009, International Business Machines
* Corporation and others. All Rights Reserved.
*******************************************************************************
*/
@@ -25,7 +25,7 @@ package com.ibm.icu.text;
* modified by users.
*
* @see com.ibm.icu.text.Bidi
- * @draft ICU 3.8
+ * @stable ICU 3.8
*/
public class BidiRun {
@@ -35,7 +35,7 @@ public class BidiRun {
if <0, count of bidi controls within run */
byte level;
- /**
+ /*
* Default constructor
*
* Note that members start and limit of a run instance have different
@@ -48,17 +48,14 @@ public class BidiRun {
* For a reference returned by getLogicalRun() or getVisualRun(),
* - start is the first logical position of the run in the source text.
* - limit is one after the last logical position of the run.
- *
- * @draft ICU 3.8
*/
BidiRun()
{
this(0, 0, (byte)0);
}
- /**
+ /*
* Constructor
- * @draft ICU 3.8
*/
BidiRun(int start, int limit, byte embeddingLevel)
{
@@ -67,9 +64,8 @@ public class BidiRun {
this.level = embeddingLevel;
}
- /**
+ /*
* Copy the content of a BidiRun instance
- * @draft ICU 3.8
*/
void copyFrom(BidiRun run)
{
@@ -81,7 +77,7 @@ public class BidiRun {
/**
* Get the first logical position of the run in the source text
- * @draft ICU 3.8
+ * @stable ICU 3.8
*/
public int getStart()
{
@@ -90,7 +86,7 @@ public class BidiRun {
/**
* Get position of one character after the end of the run in the source text
- * @draft ICU 3.8
+ * @stable ICU 3.8
*/
public int getLimit()
{
@@ -99,7 +95,7 @@ public class BidiRun {
/**
* Get length of run
- * @draft ICU 3.8
+ * @stable ICU 3.8
*/
public int getLength()
{
@@ -108,7 +104,7 @@ public class BidiRun {
/**
* Get level of run
- * @draft ICU 3.8
+ * @stable ICU 3.8
*/
public byte getEmbeddingLevel()
{
@@ -119,7 +115,7 @@ public class BidiRun {
* Check if run level is odd
* @return true if the embedding level of this run is odd, i.e. it is a
* right-to-left run.
- * @draft ICU 3.8
+ * @stable ICU 3.8
*/
public boolean isOddRun()
{
@@ -130,7 +126,7 @@ public class BidiRun {
* Check if run level is even
* @return true if the embedding level of this run is even, i.e. it is a
* left-to-right run.
- * @draft ICU 3.8
+ * @stable ICU 3.8
*/
public boolean isEvenRun()
{
@@ -139,7 +135,7 @@ public class BidiRun {
/**
* Get direction of run
- * @draft ICU 3.8
+ * @stable ICU 3.8
*/
public byte getDirection()
{
@@ -148,7 +144,7 @@ public class BidiRun {
/**
* String to display run
- * @draft ICU 3.8
+ * @stable ICU 3.8
*/
public String toString()
{
diff --git a/icu4j/src/com/ibm/icu/text/ChineseDateFormat.java b/icu4j/src/com/ibm/icu/text/ChineseDateFormat.java
index 6b69aeccf2..eeb4647338 100644
--- a/icu4j/src/com/ibm/icu/text/ChineseDateFormat.java
+++ b/icu4j/src/com/ibm/icu/text/ChineseDateFormat.java
@@ -194,8 +194,7 @@ public class ChineseDateFormat extends SimpleDateFormat {
/**
* {@inheritDoc}
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
protected DateFormat.Field patternCharToDateFormatField(char ch) {
if (ch == 'l') {
diff --git a/icu4j/src/com/ibm/icu/text/DateFormat.java b/icu4j/src/com/ibm/icu/text/DateFormat.java
index 6ce8bb89b1..4be31a2c86 100644
--- a/icu4j/src/com/ibm/icu/text/DateFormat.java
+++ b/icu4j/src/com/ibm/icu/text/DateFormat.java
@@ -643,43 +643,37 @@ public abstract class DateFormat extends UFormat {
/**
* Constant for relative style mask.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int RELATIVE = (1 << 7);
/**
* Constant for relative full style pattern.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int RELATIVE_FULL = RELATIVE | FULL;
/**
* Constant for relative style pattern.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int RELATIVE_LONG = RELATIVE | LONG;
/**
* Constant for relative style pattern.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int RELATIVE_MEDIUM = RELATIVE | MEDIUM;
/**
* Constant for relative style pattern.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int RELATIVE_SHORT = RELATIVE | SHORT;
/**
* Constant for relative default style pattern.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static final int RELATIVE_DEFAULT = RELATIVE | DEFAULT;
@@ -708,59 +702,50 @@ public abstract class DateFormat extends UFormat {
*/
/**
* Constant for date pattern with minute and second.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String MINUTE_SECOND = "ms";
-
+
/**
* Constant for date pattern with hour and minute in 24-hour presentation.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String HOUR24_MINUTE = "Hm";
-
+
/**
* Constant for date pattern with hour, minute, and second in
* 24-hour presentation.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String HOUR24_MINUTE_SECOND = "Hms";
-
+
/**
* Constant for date pattern with hour, minute, and second.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String HOUR_MINUTE_SECOND = "hms";
-
+
/**
* Constant for date pattern with standalone month.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String STANDALONE_MONTH = "LLLL";
-
+
/**
* Constant for date pattern with standalone abbreviated month.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String ABBR_STANDALONE_MONTH = "LLL";
-
-
+
/**
* Constant for date pattern with year and quarter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_QUARTER = "yQQQ";
/**
* Constant for date pattern with year and abbreviated quarter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_ABBR_QUARTER = "yQ";
@@ -770,185 +755,158 @@ public abstract class DateFormat extends UFormat {
*/
/**
* Constant for date pattern with hour and minute.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String HOUR_MINUTE = "hm";
/**
* Constant for date pattern with year.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR = "y";
-
+
/**
* Constant for date pattern with day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String DAY = "d";
-
+
/**
* Constant for date pattern with numeric month, weekday, and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String NUM_MONTH_WEEKDAY_DAY = "MEd";
-
+
/**
* Constant for date pattern with year and numeric month.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_NUM_MONTH = "yM";
-
+
/**
* Constant for date pattern with numeric month and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String NUM_MONTH_DAY = "Md";
-
+
/**
* Constant for date pattern with year, numeric month, weekday, and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_NUM_MONTH_WEEKDAY_DAY = "yMEd";
-
+
/**
* Constant for date pattern with abbreviated month, weekday, and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String ABBR_MONTH_WEEKDAY_DAY = "MMMEd";
-
+
/**
* Constant for date pattern with year and month.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_MONTH = "yMMMM";
-
+
/**
* Constant for date pattern with year and abbreviated month.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_ABBR_MONTH = "yMMM";
-
+
/**
* Constant for date pattern having month and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String MONTH_DAY = "MMMMd";
-
-
+
/**
* Constant for date pattern with abbreviated month and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String ABBR_MONTH_DAY = "MMMd";
/**
* Constant for date pattern with month, weekday, and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String MONTH_WEEKDAY_DAY = "MMMMEEEEd";
-
+
/**
* Constant for date pattern with year, abbreviated month, weekday,
* and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_ABBR_MONTH_WEEKDAY_DAY = "yMMMEd";
-
+
/**
* Constant for date pattern with year, month, weekday, and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_MONTH_WEEKDAY_DAY = "yMMMMEEEEd";
/**
* Constant for date pattern with year, month, and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_MONTH_DAY = "yMMMMd";
/**
* Constant for date pattern with year, abbreviated month, and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_ABBR_MONTH_DAY = "yMMMd";
/**
* Constant for date pattern with year, numeric month, and day.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String YEAR_NUM_MONTH_DAY = "yMd";
/**
* Constant for date pattern with numeric month.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String NUM_MONTH = "M";
/**
* Constant for date pattern with abbreviated month.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String ABBR_MONTH = "MMM";
/**
* Constant for date pattern with month.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String MONTH = "MMMM";
/**
* Constant for date pattern with hour, minute, and generic timezone.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String HOUR_MINUTE_GENERIC_TZ = "hmv";
/**
* Constant for date pattern with hour, minute, and timezone.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String HOUR_MINUTE_TZ = "hmz";
/**
* Constant for date pattern with hour.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String HOUR = "h";
/**
* Constant for date pattern with hour and generic timezone.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String HOUR_GENERIC_TZ = "hv";
/**
* Constant for date pattern with hour and timezone.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final String HOUR_TZ = "hz";
@@ -1509,17 +1467,15 @@ public abstract class DateFormat extends UFormat {
/**
* Convenience overload
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final static DateFormat getPatternInstance(String pattern) {
return getPatternInstance(pattern, ULocale.getDefault());
}
-
+
/**
* Convenience overload
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final static DateFormat getPatternInstance(String pattern, Locale locale) {
return getPatternInstance(pattern, ULocale.forLocale(locale));
@@ -1539,8 +1495,7 @@ public abstract class DateFormat extends UFormat {
*
* @param locale The locale for which the date/time format is desired.
*
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final static DateFormat getPatternInstance(String pattern, ULocale locale) {
DateTimePatternGenerator generator = DateTimePatternGenerator.getInstance(locale);
@@ -1550,8 +1505,7 @@ public abstract class DateFormat extends UFormat {
/**
* Convenience overload
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final static DateFormat getPatternInstance(Calendar cal, String pattern, Locale locale) {
return getPatternInstance(cal, pattern, ULocale.forLocale(locale));
@@ -1573,8 +1527,7 @@ public abstract class DateFormat extends UFormat {
*
* @param locale The locale for which the date/time format is desired.
*
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final static DateFormat getPatternInstance(Calendar cal, String pattern, ULocale locale) {
DateTimePatternGenerator generator = DateTimePatternGenerator.getInstance(locale);
diff --git a/icu4j/src/com/ibm/icu/text/DateFormatSymbols.java b/icu4j/src/com/ibm/icu/text/DateFormatSymbols.java
index 08c9352129..98e8c79573 100644
--- a/icu4j/src/com/ibm/icu/text/DateFormatSymbols.java
+++ b/icu4j/src/com/ibm/icu/text/DateFormatSymbols.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
- * Copyright (C) 1996-2008, International Business Machines Corporation and *
+ * Copyright (C) 1996-2009, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
@@ -208,8 +208,7 @@ public class DateFormatSymbols implements Serializable, Cloneable {
*
* @param locale the locale.
* @return A DateFormatSymbols instance.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static DateFormatSymbols getInstance(ULocale locale) {
return new DateFormatSymbols(locale);
@@ -241,11 +240,11 @@ public class DateFormatSymbols implements Serializable, Cloneable {
* or its equivalent implementation for now.
*
* @return An array of ULocale
s for which localized DateFormatSymbols
instances are available.
- * @draft ICU 3.8
+ * @draft ICU 3.8 (retain)
* @provisional This API might change or be removed in a future release.
*/
public static ULocale[] getAvailableULocales() {
- return ICUResourceBundle.getAvailableULocales(ICUResourceBundle.ICU_BASE_NAME);
+ return ICUResourceBundle.getAvailableULocales(ICUResourceBundle.ICU_BASE_NAME);
}
/**
diff --git a/icu4j/src/com/ibm/icu/text/DateIntervalFormat.java b/icu4j/src/com/ibm/icu/text/DateIntervalFormat.java
index 79159313b8..b06a033aba 100644
--- a/icu4j/src/com/ibm/icu/text/DateIntervalFormat.java
+++ b/icu4j/src/com/ibm/icu/text/DateIntervalFormat.java
@@ -243,8 +243,7 @@ import com.ibm.icu.text.SimpleDateFormat;
*
*
*
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public class DateIntervalFormat extends UFormat {
@@ -358,8 +357,7 @@ public class DateIntervalFormat extends UFormat {
*
* @param skeleton the skeleton on which interval format based.
* @return a date time interval formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final DateIntervalFormat
getInstance(String skeleton)
@@ -378,8 +376,7 @@ public class DateIntervalFormat extends UFormat {
* @param skeleton the skeleton on which interval format based.
* @param locale the given locale
* @return a date time interval formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final DateIntervalFormat
getInstance(String skeleton, Locale locale)
@@ -415,8 +412,7 @@ public class DateIntervalFormat extends UFormat {
* @param skeleton the skeleton on which interval format based.
* @param locale the given locale
* @return a date time interval formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final DateIntervalFormat
getInstance(String skeleton, ULocale locale)
@@ -438,8 +434,7 @@ public class DateIntervalFormat extends UFormat {
* @param skeleton the skeleton on which interval format based.
* @param dtitvinf the DateIntervalInfo object to be adopted.
* @return a date time interval formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final DateIntervalFormat getInstance(String skeleton,
DateIntervalInfo dtitvinf)
@@ -460,8 +455,7 @@ public class DateIntervalFormat extends UFormat {
* @param locale the given locale
* @param dtitvinf the DateIntervalInfo object to be adopted.
* @return a date time interval formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final DateIntervalFormat getInstance(String skeleton,
Locale locale,
@@ -506,8 +500,7 @@ public class DateIntervalFormat extends UFormat {
* @param locale the given locale
* @param dtitvinf the DateIntervalInfo object to be adopted.
* @return a date time interval formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final DateIntervalFormat getInstance(String skeleton,
ULocale locale,
@@ -524,8 +517,7 @@ public class DateIntervalFormat extends UFormat {
/**
* Clone this Format object polymorphically.
* @return A copy of the object.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public Object clone()
{
@@ -555,8 +547,7 @@ public class DateIntervalFormat extends UFormat {
* @return Reference to 'appendTo' parameter.
* @throws IllegalArgumentException if the formatted object is not
* DateInterval object
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final StringBuffer
format(Object obj, StringBuffer appendTo, FieldPosition fieldPosition)
@@ -578,8 +569,7 @@ public class DateIntervalFormat extends UFormat {
* @param fieldPosition On input: an alignment field, if desired.
* On output: the offsets of the alignment field.
* @return Reference to 'appendTo' parameter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final StringBuffer format(DateInterval dtInterval,
StringBuffer appendTo,
@@ -604,8 +594,7 @@ public class DateIntervalFormat extends UFormat {
* On output: the offsets of the alignment field.
* @return Reference to 'appendTo' parameter.
* @throws IllegalArgumentException if the two calendars are not equivalent, or the calendars are not Gregorian calendar.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final StringBuffer format(Calendar fromCalendar,
Calendar toCalendar,
@@ -794,8 +783,7 @@ public class DateIntervalFormat extends UFormat {
* Gets the date time interval patterns.
* @return a copy of the date time interval patterns associated with
* this date interval formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public DateIntervalInfo getDateIntervalInfo()
{
@@ -806,8 +794,7 @@ public class DateIntervalFormat extends UFormat {
/**
* Set the date time interval patterns.
* @param newItvPattern the given interval patterns to copy.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public void setDateIntervalInfo(DateIntervalInfo newItvPattern)
{
@@ -826,8 +813,7 @@ public class DateIntervalFormat extends UFormat {
* Gets the date formatter
* @return a copy of the date formatter associated with
* this date interval formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public DateFormat getDateFormat()
{
diff --git a/icu4j/src/com/ibm/icu/text/DateIntervalInfo.java b/icu4j/src/com/ibm/icu/text/DateIntervalInfo.java
index 9422730b43..2f2dbb1e9b 100644
--- a/icu4j/src/com/ibm/icu/text/DateIntervalInfo.java
+++ b/icu4j/src/com/ibm/icu/text/DateIntervalInfo.java
@@ -1,7 +1,9 @@
/*
-* Copyright (C) 2008, International Business Machines
-* Corporation and others. All Rights Reserved.
-*/
+ *******************************************************************************
+ * Copyright (C) 2008-2009, International Business Machines Corporation and *
+ * others. All Rights Reserved. *
+ *******************************************************************************
+ */
package com.ibm.icu.text;
@@ -139,9 +141,8 @@ import com.ibm.icu.util.UResourceBundle;
* Data for a calendar is loaded out of resource bundles.
* To ICU 4.0, date interval patterns are only supported in Gregorian calendar.
*
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
-**/
+ * @stable ICU 4.0
+ */
public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/* Save the interval pattern information.
@@ -158,8 +159,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* PatternInfo class saves the first and second part of interval pattern,
* and whether the interval pattern is earlier date first.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final class PatternInfo implements Cloneable, Serializable {
static final int currentSerialVersion = 1;
@@ -183,8 +183,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* constructor
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public PatternInfo(String firstPart, String secondPart,
boolean firstDateInPtnIsLaterDate) {
@@ -195,8 +194,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* accessor
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public String getFirstPart() {
return fIntervalPatternFirstPart;
@@ -204,8 +202,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* accessor
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public String getSecondPart() {
return fIntervalPatternSecondPart;
@@ -213,8 +210,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* accessor
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public boolean firstDateInPtnIsLaterDate() {
return fFirstDateInPtnIsLaterDate;
@@ -222,8 +218,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* Override equals
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public boolean equals(Object a) {
if ( a instanceof PatternInfo ) {
@@ -237,8 +232,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* Override hashcode
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public int hashCode() {
int hash = fIntervalPatternFirstPart != null ? fIntervalPatternFirstPart.hashCode() : 0;
@@ -313,8 +307,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
* Construct DateIntervalInfo for the given locale,
* @param locale the interval patterns are loaded from the Gregorian
* calendar data in this locale.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public DateIntervalInfo(ULocale locale)
{
@@ -535,8 +528,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
* a calendar field that is smaller
* than the MINIMUM_SUPPORTED_CALENDAR_FIELD
* @throws UnsupportedOperationException if the object is frozen
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public void setIntervalPattern(String skeleton,
int lrgDiffCalUnit,
@@ -657,8 +649,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
* @throws IllegalArgumentException if getting interval pattern on
* a calendar field that is smaller
* than the MINIMUM_SUPPORTED_CALENDAR_FIELD
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public PatternInfo getIntervalPattern(String skeleton, int field)
{
@@ -681,8 +672,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* Get the fallback interval pattern.
* @return fallback interval pattern
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public String getFallbackIntervalPattern()
{
@@ -704,8 +694,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
* @throws IllegalArgumentException if there is no pattern {0} or
* pattern {1} in fallbakckPattern
*
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public void setFallbackIntervalPattern(String fallbackPattern)
{
@@ -730,8 +719,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
*
* return default date ordering in interval pattern. TRUE if the first date
* in pattern is later date, FALSE otherwise.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public boolean getDefaultOrder()
{
@@ -742,8 +730,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* Boilerplate. Clone this object.
* @return a copy of the object
- * @draft ICU4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU4.0
*/
public Object clone()
{
@@ -788,8 +775,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* Boilerplate for Freezable
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public boolean isFrozen() {
return frozen;
@@ -797,8 +783,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* Boilerplate for Freezable
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public Object freeze() {
frozen = true;
@@ -807,8 +792,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* Boilerplate for Freezable
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public Object cloneAsThawed() {
DateIntervalInfo result = (DateIntervalInfo) (this.cloneUnfrozenDII());
@@ -945,8 +929,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* Override equals
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public boolean equals(Object a) {
if ( a instanceof DateIntervalInfo ) {
@@ -958,8 +941,7 @@ public class DateIntervalInfo implements Cloneable, Freezable, Serializable {
/**
* Override hashcode
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public int hashCode() {
return fIntervalPatterns.hashCode();
diff --git a/icu4j/src/com/ibm/icu/text/DecimalFormatSymbols.java b/icu4j/src/com/ibm/icu/text/DecimalFormatSymbols.java
index b85aaa798f..d122e67709 100644
--- a/icu4j/src/com/ibm/icu/text/DecimalFormatSymbols.java
+++ b/icu4j/src/com/ibm/icu/text/DecimalFormatSymbols.java
@@ -109,8 +109,7 @@ public class DecimalFormatSymbols implements Cloneable, Serializable {
*
* @param locale the locale.
* @return A DecimalFormatSymbols instance.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static DecimalFormatSymbols getInstance(ULocale locale) {
return new DecimalFormatSymbols(locale);
@@ -142,11 +141,11 @@ public class DecimalFormatSymbols implements Cloneable, Serializable {
* or its equivalent implementation for now.
*
* @return An array of ULocale
s for which localized DecimalFormatSymbols
instances are available.
- * @draft ICU 3.8
+ * @stable ICU 3.8 (retain)
* @provisional This API might change or be removed in a future release.
*/
public static ULocale[] getAvailableULocales() {
- return ICUResourceBundle.getAvailableULocales(ICUResourceBundle.ICU_BASE_NAME);
+ return ICUResourceBundle.getAvailableULocales(ICUResourceBundle.ICU_BASE_NAME);
}
diff --git a/icu4j/src/com/ibm/icu/text/DurationFormat.java b/icu4j/src/com/ibm/icu/text/DurationFormat.java
index 68759081d3..6c1ad33fc1 100644
--- a/icu4j/src/com/ibm/icu/text/DurationFormat.java
+++ b/icu4j/src/com/ibm/icu/text/DurationFormat.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
- * Copyright (C) 2007-2008, International Business Machines Corporation and *
+ * Copyright (C) 2007-2009, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
@@ -16,8 +16,8 @@ import com.ibm.icu.util.ULocale;
/**
* This class implements a formatter over a duration in time
* such as "2 days from now" or "3 hours ago".
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ *
+ * @stable ICU 3.8
*/
public abstract class DurationFormat extends UFormat {
@@ -25,8 +25,7 @@ public abstract class DurationFormat extends UFormat {
/**
* Construct a duration format for the specified locale
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public static DurationFormat getInstance(ULocale locale) {
return (DurationFormat)BasicDurationFormat.getInstance(locale);
@@ -57,16 +56,14 @@ public abstract class DurationFormat extends UFormat {
* @param toAppend the buffer to append to
* @param pos the field position, may contain additional error messages.
* @return the toAppend buffer
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public abstract StringBuffer format(Object object, StringBuffer toAppend,
FieldPosition pos);
/**
* DurationFormat cannot parse, by default. This method will throw an UnsupportedOperationException.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Object parseObject(String source, ParsePosition pos) {
throw new UnsupportedOperationException();
@@ -82,8 +79,7 @@ public abstract class DurationFormat extends UFormat {
*
* @param targetDate the ending date
* @return the formatted time
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public abstract String formatDurationFromNowTo(Date targetDate);
@@ -95,8 +91,7 @@ public abstract class DurationFormat extends UFormat {
*
* @param duration the duration in milliseconds
* @return the formatted time
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public abstract String formatDurationFromNow(long duration);
@@ -113,10 +108,7 @@ public abstract class DurationFormat extends UFormat {
* @param duration the duration in milliseconds
* @param referenceDate the date from which to compute the duration
* @return the formatted time
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public abstract String formatDurationFrom(long duration, long referenceDate);
-
-
}
diff --git a/icu4j/src/com/ibm/icu/text/NumberFormat.java b/icu4j/src/com/ibm/icu/text/NumberFormat.java
index ca281bc604..8da2eb836c 100644
--- a/icu4j/src/com/ibm/icu/text/NumberFormat.java
+++ b/icu4j/src/com/ibm/icu/text/NumberFormat.java
@@ -1243,8 +1243,7 @@ public abstract class NumberFormat extends UFormat {
* @return A rounding mode, between BigDecimal.ROUND_UP
* and BigDecimal.ROUND_UNNECESSARY
.
* @see #setRoundingMode(int)
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public int getRoundingMode() {
throw new UnsupportedOperationException("getRoundingMode must be implemented by the subclass implementation.");
@@ -1257,8 +1256,7 @@ public abstract class NumberFormat extends UFormat {
* BigDecimal.ROUND_UP
and
* BigDecimal.ROUND_UNNECESSARY
.
* @see #getRoundingMode()
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public void setRoundingMode(int roundingMode) {
throw new UnsupportedOperationException("setRoundingMode must be implemented by the subclass implementation.");
diff --git a/icu4j/src/com/ibm/icu/text/NumberingSystem.java b/icu4j/src/com/ibm/icu/text/NumberingSystem.java
index 1c56ce03da..f8d018dd3e 100644
--- a/icu4j/src/com/ibm/icu/text/NumberingSystem.java
+++ b/icu4j/src/com/ibm/icu/text/NumberingSystem.java
@@ -26,10 +26,8 @@ import com.ibm.icu.text.UCharacterIterator;
* as Hebrew numbering or Chinese numbering.
*
* @author John Emmons
- * @draft ICU 4.2
*/
-
-public class NumberingSystem {
+class NumberingSystem {
public NumberingSystem() {
radix = 10;
diff --git a/icu4j/src/com/ibm/icu/text/PluralFormat.java b/icu4j/src/com/ibm/icu/text/PluralFormat.java
index a0b85506b6..bf6210349a 100644
--- a/icu4j/src/com/ibm/icu/text/PluralFormat.java
+++ b/icu4j/src/com/ibm/icu/text/PluralFormat.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
- * Copyright (C) 2007-2008, International Business Machines Corporation and *
+ * Copyright (C) 2007-2009, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
@@ -145,36 +145,35 @@ import java.util.Set;
*
*
* @author tschumann (Tim Schumann)
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public class PluralFormat extends UFormat {
private static final long serialVersionUID = 1L;
- /**
+ /*
* The locale used for standard number formatting and getting the predefined
* plural rules (if they were not defined explicitely).
*/
private ULocale ulocale = null;
- /**
+ /*
* The plural rules used for plural selection.
*/
private PluralRules pluralRules = null;
- /**
+ /*
* The applied pattern string.
*/
private String pattern = null;
- /**
+ /*
* The format messages for each plural case. It is a mapping:
* String
(plural case keyword) --> String
* (message for this plural case).
*/
private Map parsedValues = null;
- /**
+ /*
* This NumberFormat
is used for the standard formatting of
* the number inserted into the message.
*/
@@ -184,8 +183,7 @@ public class PluralFormat extends UFormat {
* Creates a new PluralFormat
for the default locale.
* This locale will be used to get the set of plural rules and for standard
* number formatting.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public PluralFormat() {
init(null, ULocale.getDefault());
@@ -196,8 +194,7 @@ public class PluralFormat extends UFormat {
* @param ulocale the PluralFormat
will be configured with
* rules for this locale. This locale will also be used for standard
* number formatting.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public PluralFormat(ULocale ulocale) {
init(null, ulocale);
@@ -208,8 +205,7 @@ public class PluralFormat extends UFormat {
* The standard number formatting will be done using the default locale.
* @param rules defines the behavior of the PluralFormat
* object.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public PluralFormat(PluralRules rules) {
init(rules, ULocale.getDefault());
@@ -222,8 +218,7 @@ public class PluralFormat extends UFormat {
* locale.
* @param rules defines the behavior of the PluralFormat
* object.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public PluralFormat(ULocale ulocale, PluralRules rules) {
init(rules, ulocale);
@@ -235,8 +230,7 @@ public class PluralFormat extends UFormat {
* standard number formatting.
* @param pattern the pattern for this PluralFormat
.
* @throws IllegalArgumentException if the pattern is invalid.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public PluralFormat(String pattern) {
init(null, ULocale.getDefault());
@@ -253,8 +247,7 @@ public class PluralFormat extends UFormat {
* number formatting.
* @param pattern the pattern for this PluralFormat
.
* @throws IllegalArgumentException if the pattern is invalid.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public PluralFormat(ULocale ulocale, String pattern) {
init(null, ulocale);
@@ -269,8 +262,7 @@ public class PluralFormat extends UFormat {
* object.
* @param pattern the pattern for this PluralFormat
.
* @throws IllegalArgumentException if the pattern is invalid.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public PluralFormat(PluralRules rules, String pattern) {
init(rules, ULocale.getDefault());
@@ -287,15 +279,14 @@ public class PluralFormat extends UFormat {
* object.
* @param pattern the pattern for this PluralFormat
.
* @throws IllegalArgumentException if the pattern is invalid.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public PluralFormat(ULocale ulocale, PluralRules rules, String pattern) {
init(rules, ulocale);
applyPattern(pattern);
}
- /**
+ /*
* Initializes the PluralRules
object.
* Postcondition:ulocale
: is locale
PluralFormat
object yet, the formatted number will
* be returned.
* @return the string containing the formatted plural message.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final String format(double number) {
// If no pattern was applied, return the formatted number.
@@ -471,8 +460,7 @@ public class PluralFormat extends UFormat {
* @return the string buffer passed in as toAppendTo, with formatted text
* appended.
* @throws IllegalArgumentException if number is not an instance of Number
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public StringBuffer format(Object number, StringBuffer toAppendTo,
FieldPosition pos) {
@@ -493,8 +481,7 @@ public class PluralFormat extends UFormat {
* @return nothing because this method is not yet implemented.
* @throws UnsupportedOperationException
* will always be thrown by this method.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Number parse(String text, ParsePosition parsePosition) {
throw new UnsupportedOperationException();
@@ -509,8 +496,7 @@ public class PluralFormat extends UFormat {
* @return nothing because this method is not yet implemented.
* @throws UnsupportedOperationException
* will always be thrown by this method.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Object parseObject(String source, ParsePosition pos) {
throw new UnsupportedOperationException();
@@ -526,8 +512,7 @@ public class PluralFormat extends UFormat {
* @param ulocale the ULocale
used to configure the
* formatter. If ulocale
is null
, the
* default locale will be used.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setLocale(ULocale ulocale) {
if (ulocale == null) {
@@ -541,14 +526,13 @@ public class PluralFormat extends UFormat {
* call this if you want a different number format than the default
* formatter for the locale.
* @param format the number format to use.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public void setNumberFormat(NumberFormat format) {
numberFormat = format;
}
- /**
+ /*
* Checks if the applied pattern provided enough information,
* i.e., if the attribute parsedValues
stores enough
* information for plural formatting.
@@ -565,7 +549,7 @@ public class PluralFormat extends UFormat {
}
}
- /**
+ /*
* Helper method that resets the PluralFormat
object and throws
* an IllegalArgumentException
with a given error text.
* @param errorText the error text of the exception message.
@@ -577,7 +561,7 @@ public class PluralFormat extends UFormat {
throw new IllegalArgumentException(errorText);
}
- /**
+ /*
* Helper method that is called during formatting.
* It replaces the character '#' by the number used for plural selection in
* a message text. Only '#' are replaced, that are not written inside curly
@@ -621,8 +605,7 @@ public class PluralFormat extends UFormat {
/**
* {@inheritDoc}
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean equals(Object rhs) {
return rhs instanceof PluralFormat && equals((PluralFormat) rhs);
@@ -632,8 +615,7 @@ public class PluralFormat extends UFormat {
* Returns true if this equals the provided PluralFormat.
* @param rhs the PluralFormat to compare against
* @return true if this equals rhs
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean equals(PluralFormat rhs) {
return pluralRules.equals(rhs.pluralRules) &&
@@ -643,8 +625,7 @@ public class PluralFormat extends UFormat {
/**
* {@inheritDoc}
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int hashCode() {
return pluralRules.hashCode() ^ parsedValues.hashCode();
@@ -653,8 +634,7 @@ public class PluralFormat extends UFormat {
/**
* For debugging purposes only
* @return a text representation of the format data.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public String toString() {
StringBuffer buf = new StringBuffer();
diff --git a/icu4j/src/com/ibm/icu/text/PluralRules.java b/icu4j/src/com/ibm/icu/text/PluralRules.java
index 1bb70af891..5cb2f1a886 100644
--- a/icu4j/src/com/ibm/icu/text/PluralRules.java
+++ b/icu4j/src/com/ibm/icu/text/PluralRules.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
- * Copyright (C) 2007-2008, International Business Machines Corporation and *
+ * Copyright (C) 2007-2009, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
@@ -71,8 +71,7 @@ import java.util.Set;
* * The difference between 'in' and 'within' is that 'in' only includes * integers in the specified range, while 'within' includes all values.
- * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public class PluralRules implements Serializable { private static final long serialVersionUID = 1; @@ -85,36 +84,31 @@ public class PluralRules implements Serializable { /** * Common name for the 'zero' plural form. - * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public static final String KEYWORD_ZERO = "zero"; /** * Common name for the 'singular' plural form. - * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public static final String KEYWORD_ONE = "one"; /** * Common name for the 'dual' plural form. - * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public static final String KEYWORD_TWO = "two"; /** * Common name for the 'paucal' or other special plural form. - * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public static final String KEYWORD_FEW = "few"; /** * Common name for the arabic (11 to 99) plural form. - * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public static final String KEYWORD_MANY = "many"; @@ -122,25 +116,24 @@ public class PluralRules implements Serializable { * Common name for the default plural form. This name is returned * for values to which no other form in the rule applies. It * can additionally be assigned rules of its own. - * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public static final String KEYWORD_OTHER = "other"; - /** + /* * The set of all characters a valid keyword can start with. */ private static final UnicodeSet START_CHARS = new UnicodeSet("[[:ID_Start:][_]]"); - /** + /* * The set of all characters a valid keyword can contain after * the first character. */ private static final UnicodeSet CONT_CHARS = new UnicodeSet("[:ID_Continue:]"); - /** + /* * The default constraint that is always satisfied. */ private static final Constraint NO_CONSTRAINT = new Constraint() { @@ -158,7 +151,7 @@ public class PluralRules implements Serializable { } }; - /** + /* * The default rule that always returns "other". */ private static final Rule DEFAULT_RULE = new Rule() { @@ -179,14 +172,13 @@ public class PluralRules implements Serializable { public int updateRepeatLimit(int limit) { return limit; } - }; + }; /** * The default rules that accept any number and return * {@link #KEYWORD_OTHER}. - * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public static final PluralRules DEFAULT = new PluralRules(new RuleChain(DEFAULT_RULE)); @@ -196,8 +188,7 @@ public class PluralRules implements Serializable { * @param description the rule description. * @throws ParseException if the description cannot be parsed. * The exception index is typically not set, it will be -1. - * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public static PluralRules parseDescription(String description) throws ParseException { @@ -215,8 +206,7 @@ public class PluralRules implements Serializable { * otherwise returns null. * @param description the rule description. * @return the PluralRules - * @draft ICU 3.8 - * @provisional This API might change or be removed in a future release. + * @stable ICU 3.8 */ public static PluralRules createRules(String description) { try { @@ -226,17 +216,17 @@ public class PluralRules implements Serializable { } } - /** + /* * A constraint on a number. */ private interface Constraint extends Serializable { - /** + /* * Returns true if the number fulfills the constraint. * @param n the number to test, >= 0. */ boolean isFulfilled(double n); - /** + /* * Returns the larger of limit or the limit of this constraint. * If the constraint is a simple range test, this is the higher * end of the range; if it is a modulo test, this is the modulus. @@ -247,33 +237,33 @@ public class PluralRules implements Serializable { int updateRepeatLimit(int limit); } - /** + /* * A pluralization rule. . */ private interface Rule extends Serializable { - /** Returns the keyword that names this rule. */ + /* Returns the keyword that names this rule. */ String getKeyword(); - /** Returns true if the rule applies to the number. */ + /* Returns true if the rule applies to the number. */ boolean appliesTo(double n); - /** Returns the larger of limit and this rule's limit. */ + /* Returns the larger of limit and this rule's limit. */ int updateRepeatLimit(int limit); } - /** + /* * A list of rules to apply in order. */ private interface RuleList extends Serializable { - /** Returns the keyword of the first rule that applies to the number. */ + /* Returns the keyword of the first rule that applies to the number. */ String select(double n); - /** Returns the set of defined keywords. */ + /* Returns the set of defined keywords. */ Set getKeywords(); - /** Return the value at which this rulelist starts repeating. */ + /* Return the value at which this rulelist starts repeating. */ int getRepeatLimit(); } - /** + /* * syntax: * condition : or_condition * and_condition @@ -391,13 +381,13 @@ public class PluralRules implements Serializable { return result; } - /** Returns a parse exception wrapping the token and context strings. */ + /* Returns a parse exception wrapping the token and context strings. */ private static ParseException unexpected(String token, String context) { return new ParseException("unexpected token '" + token + "' in '" + context + "'", -1); } - /** + /* * Returns the token at x if available, else throws a parse exception. */ private static String nextToken(String[] tokens, int x, String context) @@ -408,7 +398,7 @@ public class PluralRules implements Serializable { throw new ParseException("missing token at end of '" + context + "'", -1); } - /** + /* * Syntax: * rule : keyword ':' condition * keyword:PluralRules
object. Immutable.
*/
private PluralRules(RuleList rules) {
@@ -716,8 +705,7 @@ public class PluralRules implements Serializable {
*
* @param number The number for which the rule has to be determined.
* @return The keyword of the selected rule.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public String select(double number) {
return rules.select(number);
@@ -728,8 +716,7 @@ public class PluralRules implements Serializable {
* object. The rule "other" is always present by default.
*
* @return The set of keywords.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public Set getKeywords() {
return keywords;
@@ -768,8 +755,7 @@ public class PluralRules implements Serializable {
/**
* {@inheritDoc}
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public String toString() {
return "keywords: " + keywords + " rules: " + rules.toString() +
@@ -778,8 +764,7 @@ public class PluralRules implements Serializable {
/**
* {@inheritDoc}
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public int hashCode() {
return keywords.hashCode();
@@ -787,8 +772,7 @@ public class PluralRules implements Serializable {
/**
* {@inheritDoc}
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean equals(Object rhs) {
return rhs instanceof PluralRules && equals((PluralRules)rhs);
@@ -798,8 +782,7 @@ public class PluralRules implements Serializable {
* Return tif rhs is equal to this.
* @param rhs the PluralRules to compare to.
* @return true if this and rhs are equal.
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
public boolean equals(PluralRules rhs) {
if (rhs == null) {
diff --git a/icu4j/src/com/ibm/icu/text/RuleBasedNumberFormat.java b/icu4j/src/com/ibm/icu/text/RuleBasedNumberFormat.java
index 949a90ce7a..aeabec67a6 100644
--- a/icu4j/src/com/ibm/icu/text/RuleBasedNumberFormat.java
+++ b/icu4j/src/com/ibm/icu/text/RuleBasedNumberFormat.java
@@ -512,6 +512,7 @@ public class RuleBasedNumberFormat extends NumberFormat {
/**
* Selector code that tells the constructor to create a numbering system formatter
* @draft ICU 4.2
+ * @provisional This API might change or be removed in a future release.
*/
public static final int NUMBERING_SYSTEM = 4;
diff --git a/icu4j/src/com/ibm/icu/text/SimpleDateFormat.java b/icu4j/src/com/ibm/icu/text/SimpleDateFormat.java
index d4c1750fa0..d3239dabe1 100644
--- a/icu4j/src/com/ibm/icu/text/SimpleDateFormat.java
+++ b/icu4j/src/com/ibm/icu/text/SimpleDateFormat.java
@@ -414,6 +414,7 @@ public class SimpleDateFormat extends DateFormat {
/**
* Construct a SimpleDateFormat using the given pattern , override and locale.
* @draft ICU 4.2
+ * @provisional This API might change or be removed in a future release.
*/
public SimpleDateFormat(String pattern, String override, ULocale loc)
{
@@ -772,8 +773,7 @@ public class SimpleDateFormat extends DateFormat {
* @param ch The pattern character
* @return DateFormat.Field associated with the pattern character
*
- * @draft ICU 3.8
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.8
*/
protected DateFormat.Field patternCharToDateFormatField(char ch) {
int patternCharIndex = -1;
diff --git a/icu4j/src/com/ibm/icu/text/TimeUnitFormat.java b/icu4j/src/com/ibm/icu/text/TimeUnitFormat.java
index 7faff1053e..944c363820 100644
--- a/icu4j/src/com/ibm/icu/text/TimeUnitFormat.java
+++ b/icu4j/src/com/ibm/icu/text/TimeUnitFormat.java
@@ -1,8 +1,8 @@
/*
- *******************************************************************************
- * Copyright (C) 2008, Google, International Business Machines Corporation and *
- * others. All Rights Reserved. *
- *******************************************************************************
+ **************************************************************************
+ * Copyright (C) 2008-2009, Google, International Business Machines
+ * Corporationand others. All Rights Reserved.
+ **************************************************************************
*/
package com.ibm.icu.text;
@@ -53,8 +53,7 @@ import com.ibm.icu.util.UResourceBundle;
* @see TimeUnitAmount
* @see TimeUnitFormat
* @author markdavis
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public class TimeUnitFormat extends MeasureFormat {
@@ -95,8 +94,7 @@ public class TimeUnitFormat extends MeasureFormat {
/**
* Create empty format using full name style, for example, "hours".
* Use setLocale and/or setFormat to modify.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public TimeUnitFormat() {
isReady = false;
@@ -107,8 +105,7 @@ public class TimeUnitFormat extends MeasureFormat {
/**
* Create TimeUnitFormat given a ULocale, and using full name style.
* @param locale locale of this time unit formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public TimeUnitFormat(ULocale locale) {
this(locale, FULL_NAME);
@@ -117,8 +114,7 @@ public class TimeUnitFormat extends MeasureFormat {
/**
* Create TimeUnitFormat given a Locale, and using full name style.
* @param locale locale of this time unit formatter.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public TimeUnitFormat(Locale locale) {
this(locale, FULL_NAME);
@@ -157,8 +153,7 @@ public class TimeUnitFormat extends MeasureFormat {
* Set the locale used for formatting or parsing.
* @param locale locale of this time unit formatter.
* @return this, for chaining.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public TimeUnitFormat setLocale(ULocale locale) {
if ( locale != this.locale ) {
@@ -172,8 +167,7 @@ public class TimeUnitFormat extends MeasureFormat {
* Set the locale used for formatting or parsing.
* @param locale locale of this time unit formatter.
* @return this, for chaining.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public TimeUnitFormat setLocale(Locale locale) {
return setLocale(ULocale.forLocale(locale));
@@ -183,8 +177,7 @@ public class TimeUnitFormat extends MeasureFormat {
* Set the format used for formatting or parsing. If null or not available, use the getNumberInstance(locale).
* @param format the number formatter.
* @return this, for chaining.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public TimeUnitFormat setNumberFormat(NumberFormat format) {
if (format == this.format) {
@@ -224,8 +217,7 @@ public class TimeUnitFormat extends MeasureFormat {
/**
* Format a TimeUnitAmount.
* @see java.text.Format#format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition)
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public StringBuffer format(Object obj, StringBuffer toAppendTo,
FieldPosition pos) {
@@ -247,8 +239,7 @@ public class TimeUnitFormat extends MeasureFormat {
/**
* Parse a TimeUnitAmount.
* @see java.text.Format#parseObject(java.lang.String, java.text.ParsePosition)
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public Object parseObject(String source, ParsePosition pos) {
if (!isReady) {
diff --git a/icu4j/src/com/ibm/icu/text/UnicodeSet.java b/icu4j/src/com/ibm/icu/text/UnicodeSet.java
index 0477950d70..2c94325436 100644
--- a/icu4j/src/com/ibm/icu/text/UnicodeSet.java
+++ b/icu4j/src/com/ibm/icu/text/UnicodeSet.java
@@ -1283,6 +1283,7 @@ public class UnicodeSet extends UnicodeFilter implements Freezable {
* Remove all strings from this UnicodeSet
* @return this object, for chaining
* @draft ICU 4.2
+ * @provisional This API might change or be removed in a future release.
*/
public final UnicodeSet removeAllStrings() {
checkFrozen();
diff --git a/icu4j/src/com/ibm/icu/text/UnicodeSetIterator.java b/icu4j/src/com/ibm/icu/text/UnicodeSetIterator.java
index 3eb34605b1..daf9acd1a1 100644
--- a/icu4j/src/com/ibm/icu/text/UnicodeSetIterator.java
+++ b/icu4j/src/com/ibm/icu/text/UnicodeSetIterator.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
- * Copyright (C) 1996-2008, International Business Machines Corporation and *
+ * Copyright (C) 1996-2009, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
@@ -206,8 +206,7 @@ public class UnicodeSetIterator {
/**
* Gets the current string from the iterator. Only use after calling next(), not nextRange().
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public String getString() {
if (codepoint != IS_STRING) {
diff --git a/icu4j/src/com/ibm/icu/util/Calendar.java b/icu4j/src/com/ibm/icu/util/Calendar.java
index 49116f332a..5b4de3dfa5 100644
--- a/icu4j/src/com/ibm/icu/util/Calendar.java
+++ b/icu4j/src/com/ibm/icu/util/Calendar.java
@@ -3156,7 +3156,7 @@ public abstract class Calendar implements Serializable, Cloneable, Comparable {
* subclass
* @param locale the locale for which the symbols should be drawn
* @return a DateFormat
appropriate to this calendar
- * @draft ICU 3.2
+ * @draft ICU 3.2 (retain)
* @provisional This API might change or be removed in a future release.
*/
protected DateFormat handleGetDateFormat(String pattern, String override, ULocale locale) {
@@ -4890,7 +4890,7 @@ public abstract class Calendar implements Serializable, Cloneable, Comparable {
* taking year and era into account. Defaults to 0 (JANUARY) for Gregorian.
* @param extendedYear the extendedYear, as returned by handleGetExtendedYear
* @return the default month
- * @draft ICU 3.6
+ * @draft ICU 3.6 (retain)
* @provisional This API might change or be removed in a future release.
* @see #MONTH
*/
@@ -4905,7 +4905,7 @@ public abstract class Calendar implements Serializable, Cloneable, Comparable {
* @param extendedYear the extendedYear, as returned by handleGetExtendedYear
* @param month the month, as returned by getDefaultMonthInYear
* @return the default day of the month
- * @draft ICU 3.6
+ * @draft ICU 3.6 (retain)
* @provisional This API might change or be removed in a future release.
* @see #DAY_OF_MONTH
*/
diff --git a/icu4j/src/com/ibm/icu/util/ChineseCalendar.java b/icu4j/src/com/ibm/icu/util/ChineseCalendar.java
index d829480264..1c8c6635b6 100644
--- a/icu4j/src/com/ibm/icu/util/ChineseCalendar.java
+++ b/icu4j/src/com/ibm/icu/util/ChineseCalendar.java
@@ -148,8 +148,7 @@ public class ChineseCalendar extends Calendar {
* Construct a ChineseCalendar
with the give date set in the default time zone
* with the default locale.
* @param date The date to which the new calendar is set.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public ChineseCalendar(Date date) {
super();
@@ -166,8 +165,7 @@ public class ChineseCalendar extends Calendar {
* @param isLeapMonth The value used to set the Chiense calendar's (@link #IS_LEAP_MONTH)
* time field.
* @param date The value used to set the calendar's {@link #DATE DATE} time field.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public ChineseCalendar(int year, int month, int isLeapMonth, int date) {
super(TimeZone.getDefault(), ULocale.getDefault());
@@ -201,8 +199,7 @@ public class ChineseCalendar extends Calendar {
* in the calendar.
* @param second the value used to set the {@link #SECOND SECOND} time field
* in the calendar.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public ChineseCalendar(int year, int month, int isLeapMonth, int date, int hour,
int minute, int second)
@@ -229,8 +226,7 @@ public class ChineseCalendar extends Calendar {
* Constructs a ChineseCalendar
based on the current time
* in the default time zone with the given locale.
* @param aLocale The given locale
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public ChineseCalendar(Locale aLocale) {
this(TimeZone.getDefault(), aLocale);
@@ -241,8 +237,7 @@ public class ChineseCalendar extends Calendar {
* Construct a ChineseCalendar
based on the current time
* in the given time zone with the default locale.
* @param zone the given time zone
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public ChineseCalendar(TimeZone zone) {
super(zone, ULocale.getDefault());
@@ -266,8 +261,7 @@ public class ChineseCalendar extends Calendar {
* in the default time zone with the given locale.
*
* @param locale the given ulocale
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public ChineseCalendar(ULocale locale) {
this(TimeZone.getDefault(), locale);
diff --git a/icu4j/src/com/ibm/icu/util/Currency.java b/icu4j/src/com/ibm/icu/util/Currency.java
index 8db00ed82b..1c11df61d1 100644
--- a/icu4j/src/com/ibm/icu/util/Currency.java
+++ b/icu4j/src/com/ibm/icu/util/Currency.java
@@ -151,8 +151,7 @@ public class Currency extends MeasureUnit implements Serializable {
* @param loc the locale for which to retrieve currency codes.
* @param d the date for which to retrieve currency codes for the given locale.
* @return The array of ISO currency codes.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static String[] getAvailableCurrencyCodes(ULocale loc, Date d)
{
@@ -1021,8 +1020,7 @@ public class Currency extends MeasureUnit implements Serializable {
* code. This constructor assumes that the code is valid.
*
* @param theISOCode The iso code used to construct the currency.
- * @draft ICU 3.4
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 3.4
*/
protected Currency(String theISOCode) {
isoCode = theISOCode;
diff --git a/icu4j/src/com/ibm/icu/util/DateInterval.java b/icu4j/src/com/ibm/icu/util/DateInterval.java
index f4ab1a980c..8b1131bf92 100644
--- a/icu4j/src/com/ibm/icu/util/DateInterval.java
+++ b/icu4j/src/com/ibm/icu/util/DateInterval.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
- * Copyright (C) 2008, International Business Machines
+ * Copyright (C) 2008-2009, International Business Machines
* Corporation and others. All Rights Reserved.
*******************************************************************************
*/
@@ -13,8 +13,7 @@ import java.io.Serializable;
/**
* This class represents date interval.
* It is a pair of long representing from date 1 to date 2.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public final class DateInterval implements Serializable {
@@ -27,8 +26,7 @@ public final class DateInterval implements Serializable {
* Constructor given from date and to date.
* @param from The from date in date interval.
* @param to The to date in date interval.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public DateInterval(long from, long to)
{
@@ -39,8 +37,7 @@ public final class DateInterval implements Serializable {
/**
* Get the from date.
* @return the from date in dateInterval.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public long getFromDate()
{
@@ -50,8 +47,7 @@ public final class DateInterval implements Serializable {
/**
* Get the to date.
* @return the to date in dateInterval.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public long getToDate()
{
@@ -60,8 +56,7 @@ public final class DateInterval implements Serializable {
/**
* Override equals
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public boolean equals(Object a) {
if ( a instanceof DateInterval ) {
@@ -73,8 +68,7 @@ public final class DateInterval implements Serializable {
/**
* Override hashcode
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public int hashCode() {
return (int)(fromDate + toDate);
@@ -82,8 +76,7 @@ public final class DateInterval implements Serializable {
/**
* Override toString
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public String toString() {
return String.valueOf(fromDate) + " " + String.valueOf(toDate);
diff --git a/icu4j/src/com/ibm/icu/util/GlobalizationPreferences.java b/icu4j/src/com/ibm/icu/util/GlobalizationPreferences.java
index 582f4defa8..43cfe69777 100644
--- a/icu4j/src/com/ibm/icu/util/GlobalizationPreferences.java
+++ b/icu4j/src/com/ibm/icu/util/GlobalizationPreferences.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
- * Copyright (C) 2004-2007, International Business Machines Corporation and *
+ * Copyright (C) 2004-2009, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
@@ -73,7 +73,7 @@ import com.ibm.icu.text.SimpleDateFormat;
* locale that will ask the services to use the host platform's values).
*
*
- * @draft ICU 3.6
+ * @draft ICU 3.6 (retainAll)
* @provisional This API might change or be removed in a future release.
*/
diff --git a/icu4j/src/com/ibm/icu/util/JapaneseCalendar.java b/icu4j/src/com/ibm/icu/util/JapaneseCalendar.java
index 5c8baeffb3..7af892a02d 100644
--- a/icu4j/src/com/ibm/icu/util/JapaneseCalendar.java
+++ b/icu4j/src/com/ibm/icu/util/JapaneseCalendar.java
@@ -1,6 +1,6 @@
/*
*******************************************************************************
- * Copyright (C) 1996-2008, International Business Machines Corporation and *
+ * Copyright (C) 1996-2009, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
@@ -234,7 +234,7 @@ public class JapaneseCalendar extends GregorianCalendar {
* @param extendedYear the extendedYear, as returned by handleGetExtendedYear
* @return the default month
* @provisional ICU 3.6
- * @draft ICU 3.6
+ * @draft ICU 3.6 (retain)
* @see #MONTH
*/
protected int getDefaultMonthInYear(int extendedYear)
@@ -257,7 +257,7 @@ public class JapaneseCalendar extends GregorianCalendar {
* @param extendedYear the extendedYear, as returned by handleGetExtendedYear
* @param month the month, as returned by getDefaultMonthInYear
* @return the default day of the month
- * @draft ICU 3.6
+ * @draft ICU 3.6 (retain)
* @provisional ICU 3.6
* @see #DAY_OF_MONTH
*/
@@ -637,8 +637,7 @@ public class JapaneseCalendar extends GregorianCalendar {
/**
* {@inheritDoc}
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public int getActualMaximum(int field) {
if (field == YEAR) {
diff --git a/icu4j/src/com/ibm/icu/util/LocaleData.java b/icu4j/src/com/ibm/icu/util/LocaleData.java
index ad370815cf..688cf4a6bb 100644
--- a/icu4j/src/com/ibm/icu/util/LocaleData.java
+++ b/icu4j/src/com/ibm/icu/util/LocaleData.java
@@ -308,6 +308,7 @@ public final class LocaleData {
* Returns LocaleDisplayPattern for this locale, e.g., {0}({1})
* @return locale display pattern as a String.
* @draft ICU 4.2
+ * @provisional This API might change or be removed in a future release.
*/
public String getLocaleDisplayPattern() {
if (bundle == null) {
@@ -323,6 +324,7 @@ public final class LocaleData {
* Returns LocaleDisplaySeparator for this locale.
* @return locale display separator as a char.
* @draft ICU 4.2
+ * @provisional This API might change or be removed in a future release.
*/
public String getLocaleSeparator() {
if (bundle == null) {
diff --git a/icu4j/src/com/ibm/icu/util/TimeUnit.java b/icu4j/src/com/ibm/icu/util/TimeUnit.java
index cbec7ea4e2..f6a99eb88c 100644
--- a/icu4j/src/com/ibm/icu/util/TimeUnit.java
+++ b/icu4j/src/com/ibm/icu/util/TimeUnit.java
@@ -1,8 +1,8 @@
/*
- *******************************************************************************
- * Copyright (C) 2008, Google, International Business Machines Corporation and *
- * others. All Rights Reserved. *
- *******************************************************************************
+ **************************************************************************
+ * Copyright (C) 2008-2009, Google, International Business Machines
+ * Corporation and others. All Rights Reserved.
+ **************************************************************************
*/
package com.ibm.icu.util;
@@ -11,8 +11,7 @@ package com.ibm.icu.util;
* @see TimeUnitAmount
* @see TimeUnit
* @author markdavis
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public class TimeUnit extends MeasureUnit {
/**
@@ -25,8 +24,7 @@ public class TimeUnit extends MeasureUnit {
/**
* Constant value for supported time unit.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static TimeUnit
SECOND = new TimeUnit("second"),
@@ -44,8 +42,7 @@ public class TimeUnit extends MeasureUnit {
/**
* @return the available values
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static TimeUnit[] values() {
return (TimeUnit[])values.clone();
@@ -55,8 +52,7 @@ public class TimeUnit extends MeasureUnit {
* A string representation for debugging.
* It is for debugging purpose. The value might change.
* Please do not count on the value.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public String toString() {
return name;
diff --git a/icu4j/src/com/ibm/icu/util/TimeUnitAmount.java b/icu4j/src/com/ibm/icu/util/TimeUnitAmount.java
index 54f53d7cbb..00eaf7c596 100644
--- a/icu4j/src/com/ibm/icu/util/TimeUnitAmount.java
+++ b/icu4j/src/com/ibm/icu/util/TimeUnitAmount.java
@@ -1,8 +1,8 @@
/*
- *******************************************************************************
- * Copyright (C) 2008, Google, International Business Machines Corporation and *
- * others. All Rights Reserved. *
- *******************************************************************************
+ **************************************************************************
+ * Copyright (C) 2008-2009, Google, International Business Machines
+ * Corporation and others. All Rights Reserved.
+ **************************************************************************
*/
package com.ibm.icu.util;
@@ -12,15 +12,13 @@ package com.ibm.icu.util;
* @see TimeUnitAmount
* @see com.ibm.icu.text.TimeUnitFormat
* @author markdavis
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public class TimeUnitAmount extends Measure {
/**
* Create from a number and unit.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public TimeUnitAmount(Number number, TimeUnit unit) {
super(number, unit);
@@ -28,8 +26,7 @@ public class TimeUnitAmount extends Measure {
/**
* Create from a number and unit.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public TimeUnitAmount(double number, TimeUnit unit) {
super(new Double(number), unit);
@@ -37,8 +34,7 @@ public class TimeUnitAmount extends Measure {
/**
* Get the unit (convenience to avoid cast).
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public TimeUnit getTimeUnit() {
return (TimeUnit) getUnit();
diff --git a/icu4j/src/com/ibm/icu/util/TimeZone.java b/icu4j/src/com/ibm/icu/util/TimeZone.java
index f585bc9037..e3d901581f 100644
--- a/icu4j/src/com/ibm/icu/util/TimeZone.java
+++ b/icu4j/src/com/ibm/icu/util/TimeZone.java
@@ -1,7 +1,7 @@
/*
* @(#)TimeZone.java 1.51 00/01/19
*
- * Copyright (C) 1996-2008, International Business Machines
+ * Copyright (C) 1996-2009, International Business Machines
* Corporation and others. All Rights Reserved.
*/
@@ -114,16 +114,14 @@ abstract public class TimeZone implements Serializable, Cloneable {
* A time zone implementation type indicating ICU's own TimeZone used by
* getTimeZone
, setDefaultTimeZoneType
* and getDefaultTimeZoneType
.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final int TIMEZONE_ICU = 0;
/**
* A time zone implementation type indicating JDK TimeZone used by
* getTimeZone
, setDefaultTimeZoneType
* and getDefaultTimeZoneType
.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static final int TIMEZONE_JDK = 1;
@@ -530,8 +528,7 @@ abstract public class TimeZone implements Serializable, Cloneable {
* @param type Timezone type, either TIMEZONE_ICU
or TIMEZONE_JDK
.
* @return the specified TimeZone
, or the GMT zone if the given ID
* cannot be understood.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static synchronized TimeZone getTimeZone(String ID, int type) {
TimeZone result;
@@ -564,8 +561,7 @@ abstract public class TimeZone implements Serializable, Cloneable {
/**
* Sets the default timezone type used by getTimeZone
.
* @param type Timezone type, either TIMEZONE_ICU
or TIMEZONE_JDK
.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static synchronized void setDefaultTimeZoneType(int type) {
if (type != TIMEZONE_ICU && type != TIMEZONE_JDK) {
@@ -577,8 +573,7 @@ abstract public class TimeZone implements Serializable, Cloneable {
/**
* Returns the default timezone type currently used.
* @return The default timezone type, either TIMEZONE_ICU
or TIMEZONE_JDK
.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static int getDefaultTimeZoneType() {
return TZ_IMPL;
@@ -805,8 +800,7 @@ abstract public class TimeZone implements Serializable, Cloneable {
* in normalized format for the given timezone ID. When the given timezone ID
* is neither a known system time zone ID nor a valid custom timezone ID,
* null is returned.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static String getCanonicalID(String id) {
return getCanonicalID(id, null);
@@ -822,8 +816,7 @@ abstract public class TimeZone implements Serializable, Cloneable {
* in normalized format for the given timezone ID. When the given timezone ID
* is neither a known system time zone ID nor a valid custom timezone ID,
* null is returned.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static String getCanonicalID(String id, boolean[] isSystemID) {
String canonicalID = null;
diff --git a/icu4j/src/com/ibm/icu/util/ULocale.java b/icu4j/src/com/ibm/icu/util/ULocale.java
index b4d2304f73..c0cdd0638e 100644
--- a/icu4j/src/com/ibm/icu/util/ULocale.java
+++ b/icu4j/src/com/ibm/icu/util/ULocale.java
@@ -1006,6 +1006,7 @@ public final class ULocale implements Serializable {
/**
* Returns the current CLDR version
* @draft ICU 4.2
+ * @provisional This API might change or be removed in a future release.
*/
public static VersionInfo getCLDRVersion() {
// fetching this data should be idempotent.
@@ -2696,8 +2697,7 @@ public final class ULocale implements Serializable {
* values are "left-to-right", "right-to-left", "top-to-bottom" or
* "bottom-to-top".
* @return The locale's layout orientation for characters.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public String getCharacterOrientation() {
return getTableString("layout", null, "characters", getName());
@@ -2708,8 +2708,7 @@ public final class ULocale implements Serializable {
* values are "left-to-right", "right-to-left", "top-to-bottom" or
* "bottom-to-top".
* @return The locale's layout orientation for lines.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public String getLineOrientation() {
return getTableString("layout", null, "lines", getName());
@@ -3179,8 +3178,7 @@ public final class ULocale implements Serializable {
*
* @param loc The ULocale to maximize
* @return The maximized ULocale instance.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static ULocale
addLikelySubtags(ULocale loc)
@@ -3230,8 +3228,7 @@ public final class ULocale implements Serializable {
*
* @param loc The ULocale to minimize
* @return The minimized ULocale instance.
- * @draft ICU 4.0
- * @provisional This API might change or be removed in a future release.
+ * @stable ICU 4.0
*/
public static ULocale
minimizeSubtags(ULocale loc)
@@ -3986,7 +3983,7 @@ public final class ULocale implements Serializable {
* @draft ICU 4.2
* @provisional This API might change or be removed in a future release.
*/
- public static class Builder {
+ public static final class Builder {
private InternalLocaleBuilder _locbld = new InternalLocaleBuilder();
diff --git a/icu4j/src/com/ibm/icu/util/VersionInfo.java b/icu4j/src/com/ibm/icu/util/VersionInfo.java
index 3a15defe58..cf0f59f14a 100644
--- a/icu4j/src/com/ibm/icu/util/VersionInfo.java
+++ b/icu4j/src/com/ibm/icu/util/VersionInfo.java
@@ -408,6 +408,7 @@ public final class VersionInfo implements Comparable
* Greater than 0 if the argument is a VersionInfo object that
* has version information less than this object.
* @draft ICU 4.2
+ * @provisional This API might change or be removed in a future release.
*/
public int compareTo(Object other) {
return compareTo((VersionInfo)other);