summaryrefslogtreecommitdiff
path: root/comphelper
diff options
context:
space:
mode:
authorNoel Grandin <noel@peralex.com>2012-11-08 14:53:57 +0200
committerStephan Bergmann <sbergman@redhat.com>2012-11-28 13:06:18 +0100
commit56ea15091c69d280310aa8b28bb1e9488eaad756 (patch)
tree5c97dee49a30aa1b51c7f54f7990723268f28878 /comphelper
parent7e708545e4e32910d93cd471eb8438dca4ab47b6 (diff)
fdo#46808, use service constructor for i18n::Collator
Change-Id: If6ad17fa9e274beff7ba872a095ced65438962af
Diffstat (limited to 'comphelper')
-rw-r--r--comphelper/source/compare/AnyCompareFactory.cxx24
-rw-r--r--comphelper/source/misc/string.cxx8
2 files changed, 9 insertions, 23 deletions
diff --git a/comphelper/source/compare/AnyCompareFactory.cxx b/comphelper/source/compare/AnyCompareFactory.cxx
index 609c390acb0d..69ce7d19ec84 100644
--- a/comphelper/source/compare/AnyCompareFactory.cxx
+++ b/comphelper/source/compare/AnyCompareFactory.cxx
@@ -21,7 +21,7 @@
#include "comphelper_module.hxx"
#include <com/sun/star/ucb/XAnyCompareFactory.hpp>
-#include <com/sun/star/i18n/XCollator.hpp>
+#include <com/sun/star/i18n/Collator.hpp>
#include <com/sun/star/lang/Locale.hpp>
#include <com/sun/star/uno/Sequence.h>
#include <com/sun/star/beans/PropertyValue.hpp>
@@ -51,16 +51,9 @@ class AnyCompare : public ::cppu::WeakImplHelper1< XAnyCompare >
public:
AnyCompare( Reference< XComponentContext > xContext, const Locale& rLocale ) throw()
{
- Reference< XMultiComponentFactory > xFactory = xContext->getServiceManager();
- if ( xFactory.is() )
- {
- m_rCollator = Reference< XCollator >(
- xFactory->createInstanceWithContext( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.i18n.Collator" )), xContext ),
- UNO_QUERY );
+ m_rCollator = Collator::create( xContext );
m_rCollator->loadDefaultCollator( rLocale,
0 ); //???
- }
-
}
virtual sal_Int16 SAL_CALL compare( const Any& any1, const Any& any2 ) throw(RuntimeException);
@@ -102,16 +95,13 @@ sal_Int16 SAL_CALL AnyCompare::compare( const Any& any1, const Any& any2 ) throw
{
sal_Int16 aResult = 0;
- if( m_rCollator.is() )
- {
- OUString aStr1;
- OUString aStr2;
+ OUString aStr1;
+ OUString aStr2;
- any1 >>= aStr1;
- any2 >>= aStr2;
+ any1 >>= aStr1;
+ any2 >>= aStr2;
- aResult = ( sal_Int16 )m_rCollator->compareString( aStr1, aStr2 );
- }
+ aResult = ( sal_Int16 )m_rCollator->compareString( aStr1, aStr2 );
return aResult;
}
diff --git a/comphelper/source/misc/string.cxx b/comphelper/source/misc/string.cxx
index 2fe8a3f508f8..1dae9e8c203f 100644
--- a/comphelper/source/misc/string.cxx
+++ b/comphelper/source/misc/string.cxx
@@ -36,6 +36,7 @@
#include <com/sun/star/i18n/BreakIterator.hpp>
#include <com/sun/star/i18n/CharType.hpp>
+#include <com/sun/star/i18n/Collator.hpp>
namespace comphelper { namespace string {
@@ -343,12 +344,7 @@ NaturalStringSorter::NaturalStringSorter(
const uno::Reference< uno::XComponentContext > &rContext,
const lang::Locale &rLocale) : m_aLocale(rLocale)
{
- uno::Reference< lang::XMultiComponentFactory > xFactory(rContext->getServiceManager(),
- uno::UNO_SET_THROW);
-
- m_xCollator = uno::Reference< i18n::XCollator >(xFactory->createInstanceWithContext(
- rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.i18n.Collator")), rContext),
- uno::UNO_QUERY_THROW);
+ m_xCollator = i18n::Collator::create( rContext );
m_xCollator->loadDefaultCollator(m_aLocale, 0);
m_xBI = i18n::BreakIterator::create( rContext );
}