1 /* GENERATED SOURCE. DO NOT MODIFY. */ 2 // 2016 and later: Unicode, Inc. and others. 3 // License & terms of use: http://www.unicode.org/copyright.html#License 4 /* 5 ****************************************************************************** 6 * Copyright (C) 2007, International Business Machines Corporation and * 7 * others. All Rights Reserved. * 8 ****************************************************************************** 9 */ 10 11 package android.icu.impl.duration; 12 13 /** 14 * Abstract factory interface used to create PeriodFormatters. 15 * PeriodFormatters are immutable once created. 16 * <p> 17 * Setters on the factory mutate the factory and return it, 18 * for chaining. 19 * @hide Only a subset of ICU is exposed in Android 20 */ 21 public interface PeriodFormatterFactory { 22 23 /** 24 * Set the name of the locale that will be used when 25 * creating new formatters. 26 * 27 * @param localeName the name of the Locale 28 * @return this PeriodFormatterFactory 29 */ 30 public PeriodFormatterFactory setLocale(String localeName); 31 32 /** 33 * Set whether limits will be displayed. 34 * 35 * @param display true if limits will be displayed 36 * @return this PeriodFormatterFactory 37 */ 38 public PeriodFormatterFactory setDisplayLimit(boolean display); 39 40 /** 41 * Set whether past and future will be displayed. 42 * 43 * @param display true if past and future will be displayed 44 * @return this PeriodFormatterFactory 45 */ 46 public PeriodFormatterFactory setDisplayPastFuture(boolean display); 47 48 /** 49 * Set how separators will be displayed. 50 * 51 * @param variant the variant indicating how separators will be displayed 52 * @return this PeriodFormatterFactory 53 */ 54 public PeriodFormatterFactory setSeparatorVariant(int variant); 55 56 /** 57 * Set the variant of the time unit names to use. 58 * 59 * @param variant the variant to use 60 * @return this PeriodFormatterFactory 61 */ 62 public PeriodFormatterFactory setUnitVariant(int variant); 63 64 /** 65 * Set the variant of the count to use. 66 * 67 * @param variant the variant to use 68 * @return this PeriodFormatterFactory 69 */ 70 public PeriodFormatterFactory setCountVariant(int variant); 71 72 /** 73 * Return a formatter based on this factory's current settings. 74 * 75 * @return a PeriodFormatter 76 */ 77 public PeriodFormatter getFormatter(); 78 } 79