/************************************************************** * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * *************************************************************/ #ifndef _FILGLOB_HXX_ #define _FILGLOB_HXX_ #include #include #include namespace fileaccess { class BaseContent; struct equalOUString { bool operator()( const rtl::OUString& rKey1, const rtl::OUString& rKey2 ) const { return !!( rKey1 == rKey2 ); } }; struct hashOUString { size_t operator()( const rtl::OUString& rName ) const { return rName.hashCode(); } }; /******************************************************************************/ /* */ /* Helper functions */ /* */ /******************************************************************************/ // Returns true if dstUnqPath is a child from srcUnqPath or both are equal extern sal_Bool isChild( const rtl::OUString& srcUnqPath, const rtl::OUString& dstUnqPath ); // Changes the prefix in name extern rtl::OUString newName( const rtl::OUString& aNewPrefix, const rtl::OUString& aOldPrefix, const rtl::OUString& old_Name ); // returns the last part of the given url as title extern rtl::OUString getTitle( const rtl::OUString& aPath ); // returns the url without last part as parentname // In case aFileName is root ( file:/// ) root is returned extern rtl::OUString getParentName( const rtl::OUString& aFileName ); /** * special copy: * On test = true, the implementation determines whether the * destination exists and returns the appropriate errorcode E_EXIST. * osl::File::copy copies unchecked. */ extern osl::FileBase::RC osl_File_copy( const rtl::OUString& strPath, const rtl::OUString& strDestPath, sal_Bool test = false ); /** * special move: * On test = true, the implementation determines whether the * destination exists and returns the appropriate errorcode E_EXIST. * osl::File::move moves unchecked */ extern osl::FileBase::RC osl_File_move( const rtl::OUString& strPath, const rtl::OUString& strDestPath, sal_Bool test = false ); // This function implements the global exception handler of the file_ucp; // It never returns; extern void throw_handler( sal_Int32 errorCode, sal_Int32 minorCode, const com::sun::star::uno::Reference< com::sun::star::ucb::XCommandEnvironment >& xEnv, const rtl::OUString& aUncPath, BaseContent* pContent, bool isHandled = false); // the physical URL of the object } // end namespace fileaccess #endif