Xalan-C++ API Reference  1.12.0
XalanICUMessageLoader.hpp
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one
3  * or more contributor license agreements. See the NOTICE file
4  * distributed with this work for additional information
5  * regarding copyright ownership. The ASF licenses this file
6  * to you under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18 #if !defined(XALANICUMESSAGELOADER_HEADER_GUARD_1357924680)
19 #define ICUMSGLOADER_HEADER_GUARD_1357924680
20 
21 #if defined (XALAN_ICU_MSG_LOADER)
22 
23 // Base include file. Must be first.
25 
27 
29 
30 #include <xercesc/util/XMLUni.hpp>
31 
32 
33 #include <unicode/ures.h>
34 
35 
36 namespace XALAN_CPP_NAMESPACE {
37 
38 
39 class XALAN_PLATFORMSUPPORT_EXPORT XalanICUMessageLoader : public XalanMessageLoader
40 
41 {
42 public:
43 
44  XalanICUMessageLoader(MemoryManager& theManager);
45 
46  virtual
47  ~XalanICUMessageLoader();
48 
49 protected:
50 
51  // -----------------------------------------------------------------------
52  // Implementation of the virtual message loader API
53  // -----------------------------------------------------------------------
54  virtual bool
55  loadMsg(
56  XalanMessages::Codes msgToLoad,
57  XalanDOMChar* toFill,
58  XalanSize_t maxChars
59  );
60 
61 private:
62 
63  XalanICUMessageLoader(const XalanICUMessageLoader&);
64 
65  XalanICUMessageLoader&
66  operator=(const XalanICUMessageLoader&);
67 
68  // -----------------------------------------------------------------------
69  // Private data members
70  //
71  // fLocaleBundle
72  // pointer to the required locale specific resource bundle,
73  // or to the default locale resrouce bundle in case the required
74  // locale specific resource bundle unavailable.
75  //
76  // -----------------------------------------------------------------------
77  UResourceBundle* m_localeBundle;
78  UResourceBundle* m_domainBundle;
79 
80  const XalanDOMString m_unknownMessage;
81 };
82 
83 
84 
85 
86 }
87 
88 #endif // defined (XALAN_ICU_MSG_LOADER)
89 
90 #endif // XALANICUMESSAGELOADER_HEADER_GUARD_1357924680
XALAN_CPP_NAMESPACE
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
Definition: XalanVersion.hpp:76
XalanDOMString.hpp
XalanMessageLoader.hpp
XALAN_PLATFORMSUPPORT_EXPORT
#define XALAN_PLATFORMSUPPORT_EXPORT
Definition: PlatformSupportDefinitions.hpp:35
PlatformSupportDefinitions.hpp