summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatúš Kukan <matus.kukan@collabora.com>2014-01-27 07:55:24 +0100
committerMatúš Kukan <matus.kukan@collabora.com>2014-01-27 08:42:53 +0100
commitc492e5156b20c98ee662b9b5f6ad874c51b95bf9 (patch)
tree43a1978a14c5c0c27eb266b97a5f926a3da28c07
parentb192f590e68252881c3a545cbb81056851695010 (diff)
i18npool: Ctor feature for css.i18n.CharacterClassification(_Unicode).
Change-Id: I5a0498a3871e2b90629af8ed6b725ff22f242fba
-rw-r--r--i18npool/inc/cclass_unicode.hxx3
-rw-r--r--i18npool/source/characterclassification/cclass_unicode.cxx14
-rw-r--r--i18npool/source/characterclassification/characterclassificationImpl.cxx14
-rw-r--r--i18npool/source/registerservices/registerservices.cxx12
-rw-r--r--i18npool/util/i18npool.component6
5 files changed, 24 insertions, 25 deletions
diff --git a/i18npool/inc/cclass_unicode.hxx b/i18npool/inc/cclass_unicode.hxx
index 859a2396a1a0..bfbbc4a7315f 100644
--- a/i18npool/inc/cclass_unicode.hxx
+++ b/i18npool/inc/cclass_unicode.hxx
@@ -69,9 +69,6 @@ public:
virtual sal_Bool SAL_CALL supportsService(const OUString& ServiceName) throw( com::sun::star::uno::RuntimeException );
virtual com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() throw( com::sun::star::uno::RuntimeException );
-protected:
- const sal_Char *cClass;
-
private:
Transliteration_casemapping *trans;
diff --git a/i18npool/source/characterclassification/cclass_unicode.cxx b/i18npool/source/characterclassification/cclass_unicode.cxx
index 25917262ea5e..df7a1d6d7040 100644
--- a/i18npool/source/characterclassification/cclass_unicode.cxx
+++ b/i18npool/source/characterclassification/cclass_unicode.cxx
@@ -28,7 +28,6 @@
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::lang;
-using namespace ::rtl;
namespace com { namespace sun { namespace star { namespace i18n {
// ----------------------------------------------------
@@ -46,7 +45,6 @@ cclass_Unicode::cclass_Unicode( const uno::Reference < XComponentContext >& rxCo
cDecimalSep( '.' )
{
trans = new Transliteration_casemapping();
- cClass = "com.sun.star.i18n.CharacterClassification_Unicode";
}
cclass_Unicode::~cclass_Unicode() {
@@ -264,7 +262,7 @@ ParseResult SAL_CALL cclass_Unicode::parsePredefinedToken(
OUString SAL_CALL cclass_Unicode::getImplementationName() throw( RuntimeException )
{
- return OUString::createFromAscii(cClass);
+ return OUString("com.sun.star.i18n.CharacterClassification_Unicode");
}
sal_Bool SAL_CALL cclass_Unicode::supportsService(const OUString& rServiceName) throw( RuntimeException )
@@ -275,10 +273,18 @@ sal_Bool SAL_CALL cclass_Unicode::supportsService(const OUString& rServiceName)
Sequence< OUString > SAL_CALL cclass_Unicode::getSupportedServiceNames() throw( RuntimeException )
{
Sequence< OUString > aRet(1);
- aRet[0] = OUString::createFromAscii(cClass);
+ aRet[0] = OUString("com.sun.star.i18n.CharacterClassification_Unicode");
return aRet;
}
} } } }
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL
+com_sun_star_i18n_CharacterClassification_Unicode_get_implementation(
+ css::uno::XComponentContext *context,
+ css::uno::Sequence<css::uno::Any> const &)
+{
+ return cppu::acquire(new css::i18n::cclass_Unicode(context));
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/i18npool/source/characterclassification/characterclassificationImpl.cxx b/i18npool/source/characterclassification/characterclassificationImpl.cxx
index 4897541c7653..068fb0c6fce8 100644
--- a/i18npool/source/characterclassification/characterclassificationImpl.cxx
+++ b/i18npool/source/characterclassification/characterclassificationImpl.cxx
@@ -191,13 +191,11 @@ CharacterClassificationImpl::getLocaleSpecificCharacterClassification(const Loca
throw RuntimeException();
}
-const sal_Char cClass[] = "com.sun.star.i18n.CharacterClassification";
-
OUString SAL_CALL
CharacterClassificationImpl::getImplementationName(void)
throw( RuntimeException )
{
- return OUString::createFromAscii(cClass);
+ return OUString("com.sun.star.i18n.CharacterClassification");
}
sal_Bool SAL_CALL
@@ -211,10 +209,18 @@ Sequence< OUString > SAL_CALL
CharacterClassificationImpl::getSupportedServiceNames(void) throw( RuntimeException )
{
Sequence< OUString > aRet(1);
- aRet[0] = OUString::createFromAscii(cClass);
+ aRet[0] = OUString("com.sun.star.i18n.CharacterClassification");
return aRet;
}
} } } }
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL
+com_sun_star_i18n_CharacterClassification_get_implementation(
+ css::uno::XComponentContext *context,
+ css::uno::Sequence<css::uno::Any> const &)
+{
+ return cppu::acquire(new css::i18n::CharacterClassificationImpl(context));
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/i18npool/source/registerservices/registerservices.cxx b/i18npool/source/registerservices/registerservices.cxx
index 2f6a60da597a..00fb7793d484 100644
--- a/i18npool/source/registerservices/registerservices.cxx
+++ b/i18npool/source/registerservices/registerservices.cxx
@@ -55,9 +55,6 @@
#include <indexentrysupplier_common.hxx>
#include <indexentrysupplier_default.hxx>
-#include <characterclassificationImpl.hxx>
-#include <cclass_unicode.hxx>
-
#include <chaptercollator.hxx>
#include <collator_unicode.hxx>
@@ -129,9 +126,6 @@ IMPL_CREATEINSTANCE( BreakIterator_th )
IMPL_CREATEINSTANCE_CTX( ChapterCollator )
IMPL_CREATEINSTANCE( Collator_Unicode )
-IMPL_CREATEINSTANCE_CTX( CharacterClassificationImpl )
-IMPL_CREATEINSTANCE_CTX( cclass_Unicode )
-
IMPL_CREATEINSTANCE_CTX( InputSequenceCheckerImpl )
IMPL_CREATEINSTANCE( InputSequenceChecker_th )
IMPL_CREATEINSTANCE( InputSequenceChecker_hi )
@@ -339,12 +333,6 @@ static const struct InstancesArray {
{ "com.sun.star.i18n.Collator_Unicode",
"com.sun.star.i18n.Collator_Unicode",
&Collator_Unicode_CreateInstance },
- { "com.sun.star.i18n.CharacterClassification",
- "com.sun.star.i18n.CharacterClassification",
- &CharacterClassificationImpl_CreateInstance },
- { "com.sun.star.i18n.CharacterClassification_Unicode",
- "com.sun.star.i18n.CharacterClassification_Unicode",
- &cclass_Unicode_CreateInstance },
{ "com.sun.star.i18n.InputSequenceChecker",
"com.sun.star.i18n.InputSequenceChecker",
&InputSequenceCheckerImpl_CreateInstance },
diff --git a/i18npool/util/i18npool.component b/i18npool/util/i18npool.component
index 4ad3adf6684b..198551d23e03 100644
--- a/i18npool/util/i18npool.component
+++ b/i18npool/util/i18npool.component
@@ -71,10 +71,12 @@
<implementation name="com.sun.star.i18n.ChapterCollator">
<service name="com.sun.star.i18n.ChapterCollator"/>
</implementation>
- <implementation name="com.sun.star.i18n.CharacterClassification">
+ <implementation name="com.sun.star.i18n.CharacterClassification"
+ constructor="com_sun_star_i18n_CharacterClassification_get_implementation">
<service name="com.sun.star.i18n.CharacterClassification"/>
</implementation>
- <implementation name="com.sun.star.i18n.CharacterClassification_Unicode">
+ <implementation name="com.sun.star.i18n.CharacterClassification_Unicode"
+ constructor="com_sun_star_i18n_CharacterClassification_Unicode_get_implementation">
<service name="com.sun.star.i18n.CharacterClassification_Unicode"/>
</implementation>
<implementation name="com.sun.star.i18n.Collator"