+ virtual UBool operator==(const TimeZoneNames& other) const;
+ virtual TimeZoneNames* clone() const;
+
+ StringEnumeration* getAvailableMetaZoneIDs(UErrorCode& status) const;
+ StringEnumeration* getAvailableMetaZoneIDs(const UnicodeString& tzID, UErrorCode& status) const;
+
+ UnicodeString& getMetaZoneID(const UnicodeString& tzID, UDate date, UnicodeString& mzID) const;
+ UnicodeString& getReferenceZoneID(const UnicodeString& mzID, const char* region, UnicodeString& tzID) const;
+
+ UnicodeString& getMetaZoneDisplayName(const UnicodeString& mzID, UTimeZoneNameType type, UnicodeString& name) const;
+ UnicodeString& getTimeZoneDisplayName(const UnicodeString& tzID, UTimeZoneNameType type, UnicodeString& name) const;
+
+ TimeZoneNames::MatchInfoCollection* find(const UnicodeString& text, int32_t start, uint32_t types, UErrorCode& status) const;
+
+ // When TZDBNames for the metazone is not available, this method returns NULL,
+ // but does NOT set U_MISSING_RESOURCE_ERROR to status.
+ static const TZDBNames* getMetaZoneNames(const UnicodeString& mzId, UErrorCode& status);
+
+private:
+ Locale fLocale;
+ char fRegion[ULOC_COUNTRY_CAPACITY];