summaryrefslogtreecommitdiff
path: root/comphelper/source/compare/AnyCompareFactory.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'comphelper/source/compare/AnyCompareFactory.cxx')
-rw-r--r--comphelper/source/compare/AnyCompareFactory.cxx24
1 files changed, 7 insertions, 17 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;
}