summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Lillqvist <tml@iki.fi>2012-12-29 12:50:32 +0200
committerTor Lillqvist <tml@iki.fi>2012-12-29 12:50:32 +0200
commitf98407403f916f9a7474e93c674fc7ac360c3539 (patch)
treee4b55c368f905e77df471ee400735d82692a5afa
parent3c33d78d6bae9768b34418c7ac54076613d808c8 (diff)
Revert "String Cleanup and news OUString methods/constructors"
Broke a unit test and made all tinderboxes red. This reverts commit 3179055dc3e267c961a5618c810fbc0df1858d72.
-rw-r--r--filter/source/xsltdialog/xmlfiltertestdialog.cxx90
-rw-r--r--tools/inc/tools/tempfile.hxx3
-rw-r--r--tools/source/fsys/tempfile.cxx114
-rw-r--r--unotools/inc/unotools/tempfile.hxx3
-rw-r--r--unotools/source/ucbhelper/tempfile.cxx180
5 files changed, 86 insertions, 304 deletions
diff --git a/filter/source/xsltdialog/xmlfiltertestdialog.cxx b/filter/source/xsltdialog/xmlfiltertestdialog.cxx
index b48e3c8e04b8..0c04cad42b1c 100644
--- a/filter/source/xsltdialog/xmlfiltertestdialog.cxx
+++ b/filter/source/xsltdialog/xmlfiltertestdialog.cxx
@@ -67,6 +67,8 @@ using namespace com::sun::star::system;
using namespace com::sun::star::xml;
using namespace com::sun::star::xml::sax;
+using ::rtl::OUString;
+
class GlobalEventListenerImpl : public ::cppu::WeakImplHelper1< com::sun::star::document::XEventListener >
{
public:
@@ -89,8 +91,8 @@ GlobalEventListenerImpl::GlobalEventListenerImpl( XMLFilterTestDialog* pDialog )
void SAL_CALL GlobalEventListenerImpl::notifyEvent( const com::sun::star::document::EventObject& Event ) throw (RuntimeException)
{
::SolarMutexGuard aGuard;
- if( (Event.EventName.compareToAscii( "OnFocus" ) == 0) ||
- (Event.EventName.compareToAscii( "OnUnload" ) == 0) )
+ if( (Event.EventName.compareToAscii( RTL_CONSTASCII_STRINGPARAM("OnFocus") ) == 0) ||
+ (Event.EventName.compareToAscii( RTL_CONSTASCII_STRINGPARAM("OnUnload") ) == 0) )
{
Reference< XComponent > xComp( Event.Source, UNO_QUERY );
mpDialog->updateCurrentDocumentButtonState( &xComp );
@@ -115,7 +117,7 @@ static bool checkComponent( Reference< XComponent >& rxComponent, const OUString
if ( rServiceName == "com.sun.star.drawing.DrawingDocument" )
{
// so if we want a draw we need to check if its not an impress
- if( !xInfo->supportsService( "com.sun.star.presentation.PresentationDocument" ) )
+ if( !xInfo->supportsService( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.presentation.PresentationDocument") ) ) )
return true;
}
else
@@ -273,10 +275,11 @@ void XMLFilterTestDialog::initDialog()
if( NULL == m_pFilterInfo )
return;
- OUString aTitle( m_sDialogTitle );
- aTitle = aTitle.replaceAll( "%s", m_pFilterInfo->maFilterName );
+ String aTitle( m_sDialogTitle );
+ aTitle.SearchAndReplace( String( RTL_CONSTASCII_USTRINGPARAM("%s") ), m_pFilterInfo->maFilterName );
SetText( aTitle );
+ String aEmpty;
bool bImport = (m_pFilterInfo->maFlags & 1) == 1;
bool bExport = (m_pFilterInfo->maFlags & 2) == 2;
@@ -307,8 +310,8 @@ void XMLFilterTestDialog::onExportBrowse()
com::sun::star::ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE,
0 );
- Reference< XNameAccess > xFilterContainer( mxMSF->createInstance( "com.sun.star.document.FilterFactory" ), UNO_QUERY );
- Reference< XNameAccess > xTypeDetection( mxMSF->createInstance( "com.sun.star.document.TypeDetection" ), UNO_QUERY );
+ Reference< XNameAccess > xFilterContainer( mxMSF->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.document.FilterFactory" )) ), UNO_QUERY );
+ Reference< XNameAccess > xTypeDetection( mxMSF->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.document.TypeDetection" )) ), UNO_QUERY );
if( xFilterContainer.is() && xTypeDetection.is() )
{
Sequence< OUString > aFilterNames( xFilterContainer->getElementNames() );
@@ -381,16 +384,19 @@ void XMLFilterTestDialog::onExportBrowse()
for( n = 0; n < nCount; n++ )
{
if( n > 0 )
- aExtension += ";";
- aExtension += "*." + (*pExtensions++);
+ aExtension += OUString( sal_Unicode(';') );
+ aExtension += OUString( RTL_CONSTASCII_USTRINGPARAM( "*." ));
+ aExtension += (*pExtensions++);
}
}
}
}
- OUString aExtensions( aExtension );
- OUString aFilterName( aInterfaceName );
- aFilterName += " (" + aExtensions + ")";
+ String aExtensions( aExtension );
+ String aFilterName( aInterfaceName );
+ aFilterName += String( RTL_CONSTASCII_USTRINGPARAM(" (") );
+ aFilterName += aExtensions;
+ aFilterName += sal_Unicode(')');
aDlg.AddFilter( aFilterName, aExtensions );
@@ -411,9 +417,9 @@ void XMLFilterTestDialog::onExportBrowse()
Reference< XDesktop2 > xLoader = Desktop::create( comphelper::getComponentContext(mxMSF) );
Reference< XInteractionHandler2 > xInter( InteractionHandler::createWithParent(comphelper::getComponentContext(mxMSF), 0) );
- OUString aFrame( "_default" );
+ OUString aFrame( RTL_CONSTASCII_USTRINGPARAM( "_default" ) );
Sequence< PropertyValue > aArguments(1);
- aArguments[0].Name = "InteractionHandler";
+ aArguments[0].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "InteractionHandler" ));
aArguments[0].Value <<= xInter;
Reference< XComponent > xComp( xLoader->loadComponentFromURL( m_sExportRecentFile, aFrame, 0, aArguments ) );
if( xComp.is() )
@@ -442,9 +448,9 @@ void XMLFilterTestDialog::doExport( Reference< XComponent > xComp )
Reference< XStorable > xStorable( xComp, UNO_QUERY );
if( xStorable.is() )
{
- OUString lead;
- OUString ext(".xml");
- TempFile aTempFile(lead, &ext);
+ String leadingChars;
+ String ext(RTL_CONSTASCII_USTRINGPARAM(".xml"));
+ utl::TempFile aTempFile(leadingChars, &ext);
OUString aTempFileURL( aTempFile.GetURL() );
const application_info_impl* pAppInfo = getApplicationInfo( m_pFilterInfo->maExportService );
@@ -460,19 +466,19 @@ void XMLFilterTestDialog::doExport( Reference< XComponent > xComp )
int i = 0;
- aSourceData[i ].Name = OUString( "OutputStream" );
+ aSourceData[i ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "OutputStream" ) );
aSourceData[i++].Value <<= xIS;
- aSourceData[i ].Name = OUString( "Indent" );
+ aSourceData[i].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "Indent" ) );
aSourceData[i++].Value <<= (sal_Bool)sal_True;
if( bUseDocType )
{
- aSourceData[i ].Name = OUString( "DocType_Public" );
+ aSourceData[i ].Name = OUString(RTL_CONSTASCII_USTRINGPARAM("DocType_Public"));
aSourceData[i++].Value <<= m_pFilterInfo->maDocType;
}
- Reference< XExportFilter > xExporter( mxMSF->createInstance( "com.sun.star.documentconversion.XSLTFilter" ), UNO_QUERY );
+ Reference< XExportFilter > xExporter( mxMSF->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.documentconversion.XSLTFilter" )) ), UNO_QUERY );
Reference< XDocumentHandler > xHandler( xExporter, UNO_QUERY );
if( xHandler.is() )
{
@@ -488,8 +494,8 @@ void XMLFilterTestDialog::doExport( Reference< XComponent > xComp )
{
try
{
- xGrfResolver = Reference< XGraphicObjectResolver >::query( xDocFac->createInstance( "com.sun.star.document.ExportGraphicObjectResolver" ) );
- xObjectResolver = Reference< XEmbeddedObjectResolver >::query( xDocFac->createInstance( "com.sun.star.document.ExportEmbeddedObjectResolver" ) );
+ xGrfResolver = Reference< XGraphicObjectResolver >::query( xDocFac->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.document.ExportGraphicObjectResolver" )) ) );
+ xObjectResolver = Reference< XEmbeddedObjectResolver >::query( xDocFac->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.document.ExportEmbeddedObjectResolver" )) ) );
}
catch( const Exception& )
{
@@ -513,7 +519,7 @@ void XMLFilterTestDialog::doExport( Reference< XComponent > xComp )
xExporter2->setSourceDocument( xComp );
Sequence< PropertyValue > aDescriptor( 1 );
- aDescriptor[0].Name = OUString( "FileName" );
+ aDescriptor[0].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "FileName" ) );
aDescriptor[0].Value <<= aTempFileURL;
if( xFilter->filter( aDescriptor ) )
@@ -534,7 +540,7 @@ void XMLFilterTestDialog::displayXMLFile( const OUString& rURL )
{
Reference< XSystemShellExecute > xSystemShellExecute(
SystemShellExecute::create(comphelper::getProcessComponentContext()) );
- xSystemShellExecute->execute( rURL, OUString(), SystemShellExecuteFlags::URIS_ONLY );
+ xSystemShellExecute->execute( rURL, rtl::OUString(), SystemShellExecuteFlags::URIS_ONLY );
}
void XMLFilterTestDialog::onImportBrowse()
@@ -542,8 +548,8 @@ void XMLFilterTestDialog::onImportBrowse()
// Open Fileopen-Dialog
::sfx2::FileDialogHelper aDlg(
com::sun::star::ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0 );
- OUString aFilterName( m_pFilterInfo->maInterfaceName );
- OUString aExtensions;
+ String aFilterName( m_pFilterInfo->maInterfaceName );
+ String aExtensions;
int nLastIndex = 0;
int nCurrentIndex = 0;
@@ -552,24 +558,26 @@ void XMLFilterTestDialog::onImportBrowse()
nLastIndex = m_pFilterInfo->maExtension.indexOf( sal_Unicode( ';' ), nLastIndex );
if( i > 0 )
- aExtensions += ";";
+ aExtensions += ';';
- aExtensions += "*.";
+ aExtensions += String( RTL_CONSTASCII_USTRINGPARAM("*.") );
if( nLastIndex == -1 )
{
- aExtensions += OUString( m_pFilterInfo->maExtension.copy( nCurrentIndex ) );
+ aExtensions += String( m_pFilterInfo->maExtension.copy( nCurrentIndex ) );
}
else
{
- aExtensions += OUString( m_pFilterInfo->maExtension.copy( nCurrentIndex, nLastIndex - nCurrentIndex ) );
+ aExtensions += String( m_pFilterInfo->maExtension.copy( nCurrentIndex, nLastIndex - nCurrentIndex ) );
nCurrentIndex = nLastIndex + 1;
nLastIndex = nCurrentIndex;
}
}
- aFilterName += " (" + aExtensions + ")";
+ aFilterName += String( RTL_CONSTASCII_USTRINGPARAM( " (" ) );
+ aFilterName += aExtensions;
+ aFilterName += sal_Unicode(')');
aDlg.AddFilter( aFilterName, aExtensions );
aDlg.SetDisplayDirectory( m_sImportRecentFile );
@@ -595,23 +603,23 @@ void XMLFilterTestDialog::import( const OUString& rURL )
Reference< XDesktop2 > xLoader = Desktop::create( comphelper::getComponentContext(mxMSF) );
Reference< XInteractionHandler2 > xInter( InteractionHandler::createWithParent(comphelper::getComponentContext(mxMSF), 0) );
- OUString aFrame( "_default" );
+ OUString aFrame( RTL_CONSTASCII_USTRINGPARAM( "_default" ) );
Sequence< PropertyValue > aArguments(2);
- aArguments[0].Name = OUString( "FilterName" );
+ aArguments[0].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "FilterName" ));
aArguments[0].Value <<= m_pFilterInfo->maFilterName;
- aArguments[1].Name = OUString( "InteractionHandler" );
+ aArguments[1].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "InteractionHandler" ));
aArguments[1].Value <<= xInter;
xLoader->loadComponentFromURL( rURL, aFrame, 0, aArguments );
if( m_pCBXDisplaySource->IsChecked() )
{
- OUString lead;
- OUString ext( ".xml" );
+ String lead;
+ String ext(RTL_CONSTASCII_USTRINGPARAM(".xml"));
TempFile aTempFile(lead, &ext);
OUString aTempFileURL( aTempFile.GetURL() );
- Reference< XImportFilter > xImporter( mxMSF->createInstance( "com.sun.star.documentconversion.XSLTFilter" ), UNO_QUERY );
+ Reference< XImportFilter > xImporter( mxMSF->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.documentconversion.XSLTFilter" )) ), UNO_QUERY );
if( xImporter.is() )
{
osl::File aInputFile( rURL );
@@ -622,13 +630,13 @@ void XMLFilterTestDialog::import( const OUString& rURL )
Sequence< PropertyValue > aSourceData( 3 );
int i = 0;
- aSourceData[i ].Name = OUString( "InputStream" );
+ aSourceData[i ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "InputStream" ));
aSourceData[i++].Value <<= xIS;
- aSourceData[i ].Name = OUString( "FileName" );
+ aSourceData[i ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "FileName" ));
aSourceData[i++].Value <<= rURL;
- aSourceData[i ].Name = OUString( "Indent" );
+ aSourceData[i ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "Indent" ));
aSourceData[i++].Value <<= (sal_Bool)sal_True;
Reference< XWriter > xWriter = Writer::create( comphelper::getComponentContext(mxMSF) );
diff --git a/tools/inc/tools/tempfile.hxx b/tools/inc/tools/tempfile.hxx
index 315ba24b32e1..9e84adc96a51 100644
--- a/tools/inc/tools/tempfile.hxx
+++ b/tools/inc/tools/tempfile.hxx
@@ -41,8 +41,7 @@ public:
The extension string may be f.e. ".txt" or "", if no extension string is
given, ".tmp" is used.
*/
- TempFile( const String& rLeadingChars, const String* pExtension=NULL, const String* pParent=NULL, sal_Bool bDirectory=sal_False );
- TempFile( const OUString& rLeadingChars, const OUString* pExtension=NULL, const OUString* pParent=NULL, sal_Bool bDirectory=sal_False );
+ TempFile( const String& rLeadingChars, const String* pExtension=NULL, const String* pParent=NULL, sal_Bool bDirectory=sal_False );
/** TempFile will be removed from disk in dtor if EnableKillingTempFile was
called before. TempDirs will be removed recursively in that case. */
diff --git a/tools/source/fsys/tempfile.cxx b/tools/source/fsys/tempfile.cxx
index 685960956c31..7a3f9dfc2f0a 100644
--- a/tools/source/fsys/tempfile.cxx
+++ b/tools/source/fsys/tempfile.cxx
@@ -35,7 +35,7 @@
using namespace osl;
-namespace { struct TempNameBase_Impl : public rtl::Static< OUString, TempNameBase_Impl > {}; }
+namespace { struct TempNameBase_Impl : public rtl::Static< ::rtl::OUString, TempNameBase_Impl > {}; }
struct TempFile_Impl
{
@@ -48,9 +48,9 @@ String GetSystemTempDir_Impl()
char sBuf[_MAX_PATH];
const char *pDir = TempDirImpl(sBuf);
- OString aTmpA( pDir );
- OUString aTmp = ::rtl::OStringToOUString( aTmpA, osl_getThreadTextEncoding() );
- OUString aRet;
+ ::rtl::OString aTmpA( pDir );
+ ::rtl::OUString aTmp = ::rtl::OStringToOUString( aTmpA, osl_getThreadTextEncoding() );
+ rtl::OUString aRet;
FileBase::getFileURLFromSystemPath( aTmp, aRet );
String aName = aRet;
if( aName.GetChar(aName.Len()-1) != '/' )
@@ -66,8 +66,8 @@ String ConstructTempDir_Impl( const String* pParent )
if ( pParent && pParent->Len() )
{
// if parent given try to use it
- OUString aTmp( *pParent );
- OUString aRet;
+ rtl::OUString aTmp( *pParent );
+ rtl::OUString aRet;
// test for valid filename
{
@@ -84,7 +84,7 @@ String ConstructTempDir_Impl( const String* pParent )
if ( !aName.Len() )
{
// if no parent or invalid parent : use system directory
- OUString& rTempNameBase_Impl = TempNameBase_Impl::get();
+ ::rtl::OUString& rTempNameBase_Impl = TempNameBase_Impl::get();
if ( rTempNameBase_Impl.isEmpty() )
rTempNameBase_Impl = GetSystemTempDir_Impl();
aName = rTempNameBase_Impl;
@@ -98,45 +98,6 @@ String ConstructTempDir_Impl( const String* pParent )
return aName;
}
-OUString ConstructTempDir_Impl( const OUString* pParent )
-{
- OUString aName;
- if ( pParent && pParent->getLength() )
- {
- // if parent given try to use it
- OUString aTmp( *pParent );
- OUString aRet;
-
- // test for valid filename
- {
- ::osl::DirectoryItem aItem;
- sal_Int32 i = aRet.getLength();
- if ( aRet[i-1] == '/' )
- i--;
-
- if ( DirectoryItem::get( aRet.copy(0, i), aItem ) == FileBase::E_None )
- aName = aRet;
- }
- }
-
- if ( !aName.isEmpty() )
- {
- // if no parent or invalid parent : use system directory
- OUString& rTempNameBase_Impl = TempNameBase_Impl::get();
- if ( rTempNameBase_Impl.isEmpty() )
- rTempNameBase_Impl = GetSystemTempDir_Impl();
- aName = rTempNameBase_Impl;
- }
-
- // Make sure that directory ends with a separator
- xub_StrLen i = aName.getLength();
- if( i>0 && aName[i-1] != '/' )
- aName += "/";
-
- return aName;
-}
-
-
void CreateTempName_Impl( String& rName, sal_Bool bKeep, sal_Bool bDir = sal_True )
{
// add a suitable tempname
@@ -144,14 +105,14 @@ void CreateTempName_Impl( String& rName, sal_Bool bKeep, sal_Bool bDir = sal_Tru
// ER 13.07.00 why not radix 36 [0-9A-Z] ?!?
const unsigned nRadix = 26;
String aName( rName );
- aName += OUString("sv");
+ aName += rtl::OUString("sv");
rName.Erase();
static unsigned long u = Time::GetSystemTicks();
for ( unsigned long nOld = u; ++u != nOld; )
{
u %= (nRadix*nRadix*nRadix);
- OUString aTmp = OUStringBuffer(aName).
+ rtl::OUString aTmp = rtl::OUStringBuffer(aName).
append((sal_Int32)(unsigned)u, nRadix).
append(".tmp").
makeStringAndClear();
@@ -230,64 +191,13 @@ TempFile::TempFile( const String& rLeadingChars, const String* pExtension,
aName += rLeadingChars;
for ( sal_Int32 i=0;; i++ )
{
- OUStringBuffer aTmpBuffer(aName);
- aTmpBuffer.append(i);
- if ( pExtension )
- aTmpBuffer.append(*pExtension);
- else
- aTmpBuffer.append(".tmp");
- OUString aTmp = aTmpBuffer.makeStringAndClear();
-
- if ( bDirectory )
- {
- FileBase::RC err = Directory::create( aTmp );
- if ( err == FileBase::E_None )
- {
- pImp->aName = aTmp;
- break;
- }
- else if ( err != FileBase::E_EXIST )
- // if f.e. name contains invalid chars stop trying to create dirs
- break;
- }
- else
- {
- File aFile( aTmp );
- FileBase::RC err = aFile.open(osl_File_OpenFlag_Create);
- if ( err == FileBase::E_None )
- {
- pImp->aName = aTmp;
- aFile.close();
- break;
- }
- else if ( err != FileBase::E_EXIST )
- // if f.e. name contains invalid chars stop trying to create dirs
- break;
- }
- }
-}
-
-TempFile::TempFile( const OUString& rLeadingChars, const OUString* pExtension,
- const OUString* pParent, sal_Bool bDirectory )
- : pImp( new TempFile_Impl )
- , bKillingFileEnabled( sal_False )
-{
- pImp-> bIsDirectory = bDirectory;
-
- // get correct directory
- OUString aName = ConstructTempDir_Impl( pParent );
-
- // now use special naming scheme (name takes leading chars and an index couting up from zero
- aName += rLeadingChars;
- for ( sal_Int32 i=0;; i++ )
- {
- OUStringBuffer aTmpBuffer(aName);
+ rtl::OUStringBuffer aTmpBuffer(aName);
aTmpBuffer.append(i);
if ( pExtension )
aTmpBuffer.append(*pExtension);
else
aTmpBuffer.append(".tmp");
- OUString aTmp = aTmpBuffer.makeStringAndClear();
+ rtl::OUString aTmp = aTmpBuffer.makeStringAndClear();
if ( bDirectory )
{
@@ -338,7 +248,7 @@ TempFile::~TempFile()
String TempFile::GetName() const
{
- OUString aTmp;
+ rtl::OUString aTmp;
aTmp = pImp->aName;
return aTmp;
}
diff --git a/unotools/inc/unotools/tempfile.hxx b/unotools/inc/unotools/tempfile.hxx
index 971bad943e11..448e729a3998 100644
--- a/unotools/inc/unotools/tempfile.hxx
+++ b/unotools/inc/unotools/tempfile.hxx
@@ -69,9 +69,6 @@ public:
TempFile( const String& rLeadingChars, const String* pExtension=NULL, const String* pParent=NULL,
sal_Bool bDirectory=sal_False);
- TempFile( const OUString& rLeadingChars, const OUString* pExtension=NULL, const OUString* pParent=NULL,
- sal_Bool bDirectory=sal_False);
-
/**
Same as above; additionally the name starts with some given characters followed by a counter ( example:
rLeadingChars="abc" means "abc0","abc1" and so on, depending on existing files in the folder ).
diff --git a/unotools/source/ucbhelper/tempfile.cxx b/unotools/source/ucbhelper/tempfile.cxx
index 754d9eb4f088..1782dcf6a011 100644
--- a/unotools/source/ucbhelper/tempfile.cxx
+++ b/unotools/source/ucbhelper/tempfile.cxx
@@ -42,7 +42,7 @@ using namespace osl;
namespace
{
struct TempNameBase_Impl
- : public rtl::Static< OUString, TempNameBase_Impl > {};
+ : public rtl::Static< ::rtl::OUString, TempNameBase_Impl > {};
}
namespace utl
@@ -60,23 +60,23 @@ struct TempFile_Impl
{}
};
-OUString getParentName( const OUString& aFileName )
+rtl::OUString getParentName( const rtl::OUString& aFileName )
{
sal_Int32 lastIndex = aFileName.lastIndexOf( sal_Unicode('/') );
- OUString aParent = aFileName.copy( 0,lastIndex );
+ rtl::OUString aParent = aFileName.copy( 0,lastIndex );
if( aParent[ aParent.getLength()-1] == sal_Unicode(':') && aParent.getLength() == 6 )
- aParent += "/";
+ aParent += rtl::OUString("/");
- if( aParent == "file://" )
- aParent = "file:///";
+ if( 0 == aParent.compareToAscii( "file://" ) )
+ aParent = rtl::OUString("file:///");
return aParent;
}
-sal_Bool ensuredir( const OUString& rUnqPath )
+sal_Bool ensuredir( const rtl::OUString& rUnqPath )
{
- OUString aPath;
+ rtl::OUString aPath;
if ( rUnqPath.isEmpty() )
return sal_False;
@@ -107,7 +107,7 @@ umask(old_mode);
if( !bSuccess )
{
// perhaps parent(s) don't exist
- OUString aParentDir = getParentName( aPath );
+ rtl::OUString aParentDir = getParentName( aPath );
if ( aParentDir != aPath )
{
bSuccess = ensuredir( getParentName( aPath ) );
@@ -136,10 +136,10 @@ String ConstructTempDir_Impl( const String* pParent )
comphelper::getProcessComponentContext() ) );
// if parent given try to use it
- OUString aTmp( *pParent );
+ rtl::OUString aTmp( *pParent );
// test for valid filename
- OUString aRet;
+ rtl::OUString aRet;
::osl::FileBase::getFileURLFromSystemPath(
::ucbhelper::getSystemPathFromFileURL( pBroker, aTmp ),
aRet );
@@ -157,10 +157,10 @@ String ConstructTempDir_Impl( const String* pParent )
if ( !aName.Len() )
{
- OUString &rTempNameBase_Impl = TempNameBase_Impl::get();
+ ::rtl::OUString &rTempNameBase_Impl = TempNameBase_Impl::get();
if (rTempNameBase_Impl.isEmpty())
{
- OUString ustrTempDirURL;
+ ::rtl::OUString ustrTempDirURL;
::osl::FileBase::RC rc = ::osl::File::getTempDirURL(
ustrTempDirURL );
if (rc == ::osl::FileBase::E_None)
@@ -180,62 +180,6 @@ String ConstructTempDir_Impl( const String* pParent )
return aName;
}
-OUString ConstructTempDir_Impl( const OUString* pParent )
-{
- OUString aName;
- if ( pParent && pParent->getLength() )
- {
- com::sun::star::uno::Reference<
- com::sun::star::ucb::XUniversalContentBroker > pBroker(
- com::sun::star::ucb::UniversalContentBroker::create(
- comphelper::getProcessComponentContext() ) );
-
- // if parent given try to use it
- OUString aTmp( *pParent );
-
- // test for valid filename
- OUString aRet;
- ::osl::FileBase::getFileURLFromSystemPath(
- ::ucbhelper::getSystemPathFromFileURL( pBroker, aTmp ),
- aRet );
- if ( !aRet.isEmpty() )
- {
- ::osl::DirectoryItem aItem;
- sal_Int32 i = aRet.getLength();
- if ( aRet[i-1] == '/' )
- i--;
-
- if ( DirectoryItem::get( aRet.copy(0, i), aItem ) == FileBase::E_None )
- aName = aRet;
- }
- }
-
- if ( !aName.isEmpty() )
- {
- OUString &rTempNameBase_Impl = TempNameBase_Impl::get();
- if (rTempNameBase_Impl.isEmpty())
- {
- OUString ustrTempDirURL;
- ::osl::FileBase::RC rc = ::osl::File::getTempDirURL(
- ustrTempDirURL );
- if (rc == ::osl::FileBase::E_None)
- rTempNameBase_Impl = ustrTempDirURL;
- }
- // if no parent or invalid parent : use default directory
- DBG_ASSERT( !rTempNameBase_Impl.isEmpty(), "No TempDir!" );
- aName = rTempNameBase_Impl;
- ensuredir( aName );
- }
-
- // Make sure that directory ends with a separator
- sal_Int32 i = aName.getLength();
- if( i>0 && aName[i-1] != '/' )
- aName += "/";
-
- return aName;
-}
-
-
void CreateTempName_Impl( String& rName, sal_Bool bKeep, sal_Bool bDir = sal_True )
{
// add a suitable tempname
@@ -243,7 +187,7 @@ void CreateTempName_Impl( String& rName, sal_Bool bKeep, sal_Bool bDir = sal_Tru
unsigned const nRadix = 36;
unsigned long const nMax = (nRadix*nRadix*nRadix*nRadix*nRadix*nRadix);
String aName( rName );
- aName += OUString( "lu" );
+ aName += rtl::OUString( "lu" );
rName.Erase();
static unsigned long u = Time::GetSystemTicks() % nMax;
@@ -251,8 +195,8 @@ void CreateTempName_Impl( String& rName, sal_Bool bKeep, sal_Bool bDir = sal_Tru
{
u %= nMax;
String aTmp( aName );
- aTmp += OUString::valueOf(static_cast<sal_Int64>(u), nRadix);
- aTmp += OUString( ".tmp" );
+ aTmp += rtl::OUString::valueOf(static_cast<sal_Int64>(u), nRadix);
+ aTmp += rtl::OUString( ".tmp" );
if ( bDir )
{
@@ -328,7 +272,7 @@ void lcl_createName(TempFile_Impl& _rImpl,const String& rLeadingChars,sal_Bool _
if ( pExtension )
aTmp += *pExtension;
else
- aTmp += OUString( ".tmp" );
+ aTmp += rtl::OUString( ".tmp" );
if ( bDirectory )
{
FileBase::RC err = Directory::create( aTmp );
@@ -377,74 +321,6 @@ umask(old_mode);
}
-void lcl_createName(TempFile_Impl& _rImpl,const OUString& rLeadingChars,sal_Bool _bStartWithZero, const OUString* pExtension, const OUString* pParent, sal_Bool bDirectory)
-{
- _rImpl.bIsDirectory = bDirectory;
-
- // get correct directory
- OUString aName = ConstructTempDir_Impl( pParent );
-
- sal_Bool bUseNumber = _bStartWithZero;
- // now use special naming scheme ( name takes leading chars and an index counting up from zero
- aName += rLeadingChars;
- for ( sal_Int32 i=0;; i++ )
- {
- OUString aTmp( aName );
- if ( bUseNumber )
- aTmp += OUString::valueOf( static_cast< sal_Int32>(i) );
- bUseNumber = sal_True;
- if ( pExtension )
- aTmp += *pExtension;
- else
- aTmp += ".tmp";
- if ( bDirectory )
- {
- FileBase::RC err = Directory::create( aTmp );
- if ( err == FileBase::E_None )
- {
- _rImpl.aName = aTmp;
- break;
- }
- else if ( err != FileBase::E_EXIST )
- // if f.e. name contains invalid chars stop trying to create dirs
- break;
- }
- else
- {
- File aFile( aTmp );
-#ifdef UNX
-/* RW permission for the user only! */
- mode_t old_mode = umask(077);
-#endif
- FileBase::RC err = aFile.open(osl_File_OpenFlag_Create);
-#ifdef UNX
-umask(old_mode);
-#endif
- if ( err == FileBase::E_None || err == FileBase::E_NOLCK )
- {
- _rImpl.aName = aTmp;
- aFile.close();
- break;
- }
- else if ( err != FileBase::E_EXIST )
- {
- // if f.e. name contains invalid chars stop trying to create dirs
- // but if there is a folder with such name proceed further
-
- DirectoryItem aTmpItem;
- FileStatus aTmpStatus( osl_FileStatus_Mask_Type );
- if ( DirectoryItem::get( aTmp, aTmpItem ) != FileBase::E_None
- || aTmpItem.getFileStatus( aTmpStatus ) != FileBase::E_None
- || aTmpStatus.getFileType() != FileStatus::Directory )
- break;
- }
- }
- if ( !_bStartWithZero )
- aTmp += OUString::valueOf( static_cast<sal_Int32>(i) );
- }
-}
-
-
String TempFile::CreateTempName( const String* pParent )
{
// get correct directory
@@ -454,7 +330,7 @@ String TempFile::CreateTempName( const String* pParent )
CreateTempName_Impl( aName, sal_False );
// convert to file URL
- OUString aTmp;
+ rtl::OUString aTmp;
if ( aName.Len() )
FileBase::getSystemPathFromFileURL( aName, aTmp );
return aTmp;
@@ -479,14 +355,6 @@ TempFile::TempFile( const String& rLeadingChars, const String* pExtension, const
{
lcl_createName(*pImp,rLeadingChars,sal_True, pExtension, pParent, bDirectory);
}
-
-TempFile::TempFile( const OUString& rLeadingChars, const OUString* pExtension, const OUString* pParent, sal_Bool bDirectory)
- : pImp( new TempFile_Impl )
- , bKillingFileEnabled( sal_False )
-{
- lcl_createName(*pImp,rLeadingChars,sal_True, pExtension, pParent, bDirectory);
-}
-
TempFile::TempFile( const String& rLeadingChars,sal_Bool _bStartWithZero, const String* pExtension, const String* pParent, sal_Bool bDirectory)
: pImp( new TempFile_Impl )
, bKillingFileEnabled( sal_False )
@@ -520,7 +388,7 @@ sal_Bool TempFile::IsValid() const
String TempFile::GetFileName() const
{
- OUString aTmp;
+ rtl::OUString aTmp;
FileBase::getSystemPathFromFileURL( pImp->aName, aTmp );
return aTmp;
}
@@ -529,7 +397,7 @@ String TempFile::GetURL() const
{
if ( !pImp->aURL.Len() )
{
- OUString aTmp;
+ rtl::OUString aTmp;
LocalFileHelper::ConvertPhysicalNameToURL( GetFileName(), aTmp );
pImp->aURL = aTmp;
}
@@ -564,7 +432,7 @@ String TempFile::SetTempNameBaseDirectory( const String &rBaseName )
if( !rBaseName.Len() )
return String();
- OUString aUnqPath( rBaseName );
+ rtl::OUString aUnqPath( rBaseName );
// remove trailing slash
if ( rBaseName.GetChar( rBaseName.Len() - 1 ) == sal_Unicode( '/' ) )
@@ -580,14 +448,14 @@ String TempFile::SetTempNameBaseDirectory( const String &rBaseName )
bRet = sal_True;
// failure to create base directory means returning an empty string
- OUString aTmp;
+ rtl::OUString aTmp;
if ( bRet )
{
// append own internal directory
bRet = sal_True;
- OUString &rTempNameBase_Impl = TempNameBase_Impl::get();
+ ::rtl::OUString &rTempNameBase_Impl = TempNameBase_Impl::get();
rTempNameBase_Impl = rBaseName;
- rTempNameBase_Impl += "/";
+ rTempNameBase_Impl += rtl::OUString('/');
TempFile aBase( NULL, sal_True );
if ( aBase.IsValid() )