1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28 #ifndef __FRAMEWORK_SERVICES_URLTRANSFORMER_HXX_ 29 #define __FRAMEWORK_SERVICES_URLTRANSFORMER_HXX_ 30 31 //_________________________________________________________________________________________________________________ 32 // my own includes 33 //_________________________________________________________________________________________________________________ 34 35 #ifndef __FRAMEWORK_OMUTEXMEMBER_HXX_ 36 #include <threadhelp/threadhelpbase.hxx> 37 #endif 38 #include <macros/generic.hxx> 39 #include <macros/debug.hxx> 40 #include <macros/xinterface.hxx> 41 #include <macros/xtypeprovider.hxx> 42 #include <macros/xserviceinfo.hxx> 43 #include <general.h> 44 45 //_________________________________________________________________________________________________________________ 46 // interface includes 47 //_________________________________________________________________________________________________________________ 48 #include <com/sun/star/util/XURLTransformer.hpp> 49 #include <com/sun/star/util/URL.hpp> 50 51 //_________________________________________________________________________________________________________________ 52 // other includes 53 //_________________________________________________________________________________________________________________ 54 #include <cppuhelper/implbase2.hxx> 55 56 //_________________________________________________________________________________________________________________ 57 // namespace 58 //_________________________________________________________________________________________________________________ 59 60 namespace framework{ 61 62 //_________________________________________________________________________________________________________________ 63 // exported const 64 //_________________________________________________________________________________________________________________ 65 66 //_________________________________________________________________________________________________________________ 67 // exported definitions 68 //_________________________________________________________________________________________________________________ 69 70 /*-************************************************************************************************************//** 71 @short 72 73 @descr - 74 75 @implements XInterface 76 XTypeProvider 77 XServiceInfo 78 XURLTransformer 79 80 @base ThreadHelpBase 81 OWeakObject 82 *//*-*************************************************************************************************************/ 83 84 class URLTransformer : public ::cppu::WeakImplHelper2< ::com::sun::star::util::XURLTransformer, css::lang::XServiceInfo> 85 { 86 //------------------------------------------------------------------------------------------------------------- 87 // public methods 88 //------------------------------------------------------------------------------------------------------------- 89 90 public: 91 92 //--------------------------------------------------------------------------------------------------------- 93 // constructor / destructor 94 //--------------------------------------------------------------------------------------------------------- 95 96 /*-****************************************************************************************************//** 97 @short - 98 @descr - 99 100 @seealso - 101 102 @param - 103 @return - 104 105 @onerror - 106 *//*-*****************************************************************************************************/ 107 108 URLTransformer( const css::uno::Reference< css::lang::XMultiServiceFactory >& sFactory ); 109 110 /*-****************************************************************************************************//** 111 @short - 112 @descr - 113 114 @seealso - 115 116 @param - 117 @return - 118 119 @onerror - 120 *//*-*****************************************************************************************************/ 121 122 virtual ~URLTransformer(); 123 124 //--------------------------------------------------------------------------------------------------------- 125 // XInterface, XTypeProvider, XServiceInfo 126 //--------------------------------------------------------------------------------------------------------- 127 128 DECLARE_XSERVICEINFO 129 130 //--------------------------------------------------------------------------------------------------------- 131 // XURLTransformer 132 //--------------------------------------------------------------------------------------------------------- 133 134 /*-****************************************************************************************************//** 135 @short - 136 @descr - 137 138 @seealso - 139 140 @param - 141 @return - 142 143 @onerror - 144 *//*-*****************************************************************************************************/ 145 146 virtual sal_Bool SAL_CALL parseStrict( css::util::URL& aURL ) throw( css::uno::RuntimeException ); 147 148 /*-****************************************************************************************************//** 149 @short - 150 @descr - 151 152 @seealso - 153 154 @param - 155 @return - 156 157 @onerror - 158 *//*-*****************************************************************************************************/ 159 160 virtual sal_Bool SAL_CALL parseSmart( css::util::URL& aURL , 161 const ::rtl::OUString& sSmartProtocol ) throw( css::uno::RuntimeException ); 162 163 /*-****************************************************************************************************//** 164 @short - 165 @descr - 166 167 @seealso - 168 169 @param - 170 @return - 171 172 @onerror - 173 *//*-*****************************************************************************************************/ 174 175 virtual sal_Bool SAL_CALL assemble( css::util::URL& aURL ) throw( css::uno::RuntimeException ); 176 177 /*-****************************************************************************************************//** 178 @short - 179 @descr - 180 181 @seealso - 182 183 @param - 184 @return - 185 186 @onerror - 187 *//*-*****************************************************************************************************/ 188 189 virtual ::rtl::OUString SAL_CALL getPresentation( const css::util::URL& aURL , 190 sal_Bool bWithPassword ) throw( css::uno::RuntimeException ); 191 192 //------------------------------------------------------------------------------------------------------------- 193 // protected methods 194 //------------------------------------------------------------------------------------------------------------- 195 196 protected: 197 198 //------------------------------------------------------------------------------------------------------------- 199 // private methods 200 //------------------------------------------------------------------------------------------------------------- 201 202 private: 203 204 //------------------------------------------------------------------------------------------------------------- 205 // debug methods 206 // (should be private everyway!) 207 //------------------------------------------------------------------------------------------------------------- 208 209 210 //------------------------------------------------------------------------------------------------------------- 211 // variables 212 // (should be private everyway!) 213 //------------------------------------------------------------------------------------------------------------- 214 215 private: 216 217 css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory ; /// reference to factory, which has created this instance 218 219 }; // class URLTransformer 220 221 } // namespace framework 222 223 #endif // #ifndef __FRAMEWORK_SERVICES_URLTRANSFORMER_HXX_ 224