/**
*******************************************************************************
- * Copyright (C) 2001-2003, International Business Machines Corporation and *
+ * Copyright (C) 2001-2004, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*
#else
-#include "unicode/uobject.h"
#include "unicode/unistr.h"
-#include "unicode/chariter.h"
#include "unicode/locid.h"
-#include "unicode/ubrk.h"
#include "unicode/strenum.h"
#include "hash.h"
*/
static LocaleKey* createWithCanonicalFallback(const UnicodeString* primaryID,
const UnicodeString* canonicalFallbackID,
- UErrorCode& status);
-
+ UErrorCode& status);
+
/**
* Create a LocaleKey with canonical primary and fallback IDs.
*/
static LocaleKey* createWithCanonicalFallback(const UnicodeString* primaryID,
const UnicodeString* canonicalFallbackID,
int32_t kind,
- UErrorCode& status);
-
+ UErrorCode& status);
+
protected:
/**
* PrimaryID is the user's requested locale string,
/**
* UObject boilerplate.
*/
- static inline UClassID getStaticClassID() {
- return (UClassID)&fgClassID;
- }
+ static UClassID U_EXPORT2 getStaticClassID();
+
+ virtual UClassID getDynamicClassID() const;
- virtual UClassID getDynamicClassID() const {
- return getStaticClassID();
- }
+ /**
+ * Destructor.
+ */
+ virtual ~LocaleKey();
#ifdef SERVICE_DEBUG
public:
virtual UnicodeString& debugClass(UnicodeString& result) const;
#endif
- private:
- static const char fgClassID;
};
/*
* Return true if this id is one the factory supports (visible or
* otherwise).
*/
- virtual UBool isSupportedID(const UnicodeString& id, UErrorCode& status) const;
+ virtual UBool isSupportedID(const UnicodeString& id, UErrorCode& status) const;
/**
* Return the set of ids that this factory supports (visible or
*/
virtual const Hashtable* getSupportedIDs(UErrorCode& status) const;
- public:
+public:
/**
* UObject boilerplate.
*/
- static inline UClassID getStaticClassID() {
- return (UClassID)&fgClassID;
- }
+ static UClassID U_EXPORT2 getStaticClassID();
- virtual UClassID getDynamicClassID() const {
- return getStaticClassID();
- }
+ virtual UClassID getDynamicClassID() const;
#ifdef SERVICE_DEBUG
public:
virtual UnicodeString& debugClass(UnicodeString& result) const;
#endif
- private:
- static const char fgClassID;
};
/*
void updateVisibleIDs(Hashtable& result, UErrorCode& status) const;
protected:
- /**
+ /**
* Return true if this id is equal to the locale name.
*/
- virtual UBool isSupportedID(const UnicodeString& id, UErrorCode& status) const;
+ virtual UBool isSupportedID(const UnicodeString& id, UErrorCode& status) const;
- public:
+public:
/**
* UObject boilerplate.
*/
- static inline UClassID getStaticClassID() {
- return (UClassID)&fgClassID;
- }
+ static UClassID U_EXPORT2 getStaticClassID();
- virtual UClassID getDynamicClassID() const {
- return getStaticClassID();
- }
+ virtual UClassID getDynamicClassID() const;
#ifdef SERVICE_DEBUG
public:
virtual UnicodeString& debugClass(UnicodeString& result) const;
#endif
- private:
- static const char fgClassID;
};
/*
ICUResourceBundleFactory();
/**
- * A service factory based on ICU resource data in resources
- * with the given name.
+ * A service factory based on ICU resource data in resources with
+ * the given name. This should be a 'path' that can be passed to
+ * ures_openAvailableLocales, such as U_ICUDATA or U_ICUDATA_COLL.
+ * The empty string is equivalent to U_ICUDATA.
*/
ICUResourceBundleFactory(const UnicodeString& bundleName);
+ /**
+ * Destructor
+ */
+ virtual ~ICUResourceBundleFactory();
+
protected:
/**
* Return the supported IDs. This is the set of all locale names in ICULocaleData.
*/
virtual UObject* handleCreate(const Locale& loc, int32_t kind, const ICUService* service, UErrorCode& status) const;
- public:
+public:
/**
* UObject boilerplate.
*/
- virtual UClassID getDynamicClassID() const {
- return getStaticClassID();
- }
+ static UClassID U_EXPORT2 getStaticClassID();
+ virtual UClassID getDynamicClassID() const;
- static UClassID getStaticClassID() {
- return (UClassID)&fgClassID;
- }
#ifdef SERVICE_DEBUG
public:
virtual UnicodeString& debugClass(UnicodeString& result) const;
#endif
- private:
- static const char fgClassID;
};
/*
static UnicodeString& initNameFromLocale(const Locale& locale, UnicodeString& result);
static const Hashtable* getAvailableLocaleNames(const UnicodeString& bundleID);
static UBool isFallbackOf(const UnicodeString& root, const UnicodeString& child);
- static UBool cleanup(void);
};
U_NAMESPACE_END