]> granicus.if.org Git - icu/commitdiff
ICU-10067 Implement feedback from API proposal.
authorTravis Keep <keep94@gmail.com>
Mon, 22 Jul 2013 22:18:54 +0000 (22:18 +0000)
committerTravis Keep <keep94@gmail.com>
Mon, 22 Jul 2013 22:18:54 +0000 (22:18 +0000)
X-SVN-Rev: 33955

icu4j/main/classes/core/src/com/ibm/icu/text/ListFormatter.java
icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/ListFormatterTest.java

index c1bc9c750161804deb08b350e9232bc497cfb92c..ed31e418e4fb732aa92644d82e472ecbc81654f6 100644 (file)
@@ -149,11 +149,16 @@ final public class ListFormatter {
     /**
      * Returns the pattern to use for a particular item count.
      * @param count the item count.
-     * @return the pattern with {0}, {1}, {2}, etc.
-     * @internal
-     * @deprecated This API is ICU internal only.
+     * @return the pattern with {0}, {1}, {2}, etc. For English,
+     * getPatternForNumItems(3) == "{0}, {1}, and {2}"
+     * @throws IllegalArgumentException when count is 0 or negative.
+     * @draft ICU 52
+     * @provisional This API might change or be removed in a future release.
      */
-    public String createPatternForNumItems(int count) {
+    public String getPatternForNumItems(int count) {
+        if (count <= 0) {
+            throw new IllegalArgumentException("count must be > 0");
+        }
         ArrayList<String> list = new ArrayList<String>();
         for (int i = 0; i < count; i++) {
             list.add(String.format("{%d}", i));
index dd3418eef2c83c75247cf86a32ef27853bdb0f3f..099f35c0e6cd23b6098970fb4ad70d448df0fdd2 100644 (file)
@@ -117,8 +117,17 @@ public class ListFormatterTest extends TestFmwk {
         assertEquals(
                 "createPatternForNumItems",
                 "{0}, {1}, and {2}",
-                listFormatter.createPatternForNumItems(3));
-        
+                listFormatter.getPatternForNumItems(3));        
+    }
+    
+    public void TestGetPatternForNumItemsException() {
+        ListFormatter listFormatter = ListFormatter.getInstance(ULocale.ENGLISH);
+        try {
+            listFormatter.getPatternForNumItems(0);
+            fail("IllegalArgumentException expected.");
+        } catch (IllegalArgumentException expected) {
+            // expected.
+        }
     }
     
     public void TestGetLocale() {