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 __com_sun_star_logging_FileHandler_idl__ 29#define __com_sun_star_logging_FileHandler_idl__ 30 31#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ 32#include <com/sun/star/lang/IllegalArgumentException.idl> 33#endif 34#ifndef __com_sun_star_beans_NamedValue_idl__ 35#include <com/sun/star/beans/NamedValue.idl> 36#endif 37 38//============================================================================= 39 40module com { module sun { module star { module logging { 41 42interface XLogHandler; 43 44//============================================================================= 45 46/** specifies a component implementing a log handler whose output 47 channel is a file. 48 49 <p>The handler will use the <code>Encoding</code> attribute of <type>XLogHandler</type> 50 to determine how to encode strings before actually writing them to the output 51 file.</p> 52 53 @see XLogHandler::Encoding 54 55 @since OOo 2.3 56 */ 57service FileHandler : XLogHandler 58{ 59 /** creates a log handler whose output is directed to a file given by URL. 60 61 @param FileURL 62 the URL of the file to be created. This URL is resolved using the 63 <type scope="::com::sun::star::util">PathSubstitution</type> service. That 64 is, it is allowed to include placeholders such as <code>$(userurl)</code>. 65 */ 66 create( [in] string FileURL ); 67 68 /** creates an instance of the log handler, using generic settings 69 70 @param Settings 71 contains the initial settings for the log handler 72 73 <p>The following settings are recognized and supported: 74 <ul><li><code>Encoding</code> - denotes the initial value of the <member>XLogHandler::Encoding</member></li> 75 <li><code>Formatter</code> - denotes the initial value of the <member>XLogHandler::Formatter</member></li> 76 <li><code>Level</code> - denotes the initial value of the <member>XLogHandler::Level</member></li> 77 </ul></p> 78 79 <p>Additionally, a setting name <code>FileURL</code> is recognized. It must be of type 80 string, and denotes the file URL to which the handler's output should be directed.</p> 81 82 <p>At least the URL argument must be present in the settings.</p> 83 84 @throws ::com::sun::star::lang::IllegalArgumentException 85 if <arg>Settings</args> contains settings whose value is of the wrong type. 86 */ 87 createWithSettings( [in] sequence< ::com::sun::star::beans::NamedValue > Settings ) 88 raises ( ::com::sun::star::lang::IllegalArgumentException ); 89}; 90 91//============================================================================= 92 93}; }; }; }; 94 95//============================================================================= 96 97#endif 98