2 ******************************************************************************
\r
3 * Copyright (C) 2007-2009, International Business Machines Corporation and *
\r
4 * others. All Rights Reserved. *
\r
5 ******************************************************************************
\r
8 package com.ibm.icu.impl.duration;
\r
10 import com.ibm.icu.impl.duration.impl.PeriodFormatterDataService;
\r
11 import com.ibm.icu.impl.duration.impl.ResourceBasedPeriodFormatterDataService;
\r
13 import java.util.Collection;
\r
16 * An implementation of PeriodFormatterService that constructs a
\r
17 * BasicPeriodFormatterFactory.
\r
19 public class BasicPeriodFormatterService implements PeriodFormatterService {
\r
20 private static BasicPeriodFormatterService instance;
\r
21 private PeriodFormatterDataService ds;
\r
24 * Return the default service instance. This uses the default data service.
\r
26 * @return an BasicPeriodFormatterService
\r
28 public static BasicPeriodFormatterService getInstance() {
\r
29 if (instance == null) {
\r
30 PeriodFormatterDataService ds = ResourceBasedPeriodFormatterDataService
\r
32 instance = new BasicPeriodFormatterService(ds);
\r
38 * Construct a BasicPeriodFormatterService using the given
\r
39 * PeriodFormatterDataService.
\r
41 * @param ds the data service to use
\r
43 public BasicPeriodFormatterService(PeriodFormatterDataService ds) {
\r
47 public DurationFormatterFactory newDurationFormatterFactory() {
\r
48 return new BasicDurationFormatterFactory(this);
\r
51 public PeriodFormatterFactory newPeriodFormatterFactory() {
\r
52 return new BasicPeriodFormatterFactory(ds);
\r
55 public PeriodBuilderFactory newPeriodBuilderFactory() {
\r
56 return new BasicPeriodBuilderFactory(ds);
\r
59 public Collection<String> getAvailableLocaleNames() {
\r
60 return ds.getAvailableLocales();
\r