blob: 8b9d80f0083cb846e38d3e5d40fb64ca7420355e [file] [log] [blame]
/**************************************************************
*
* 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 __com_sun_star_logging_FileHandler_idl__
#define __com_sun_star_logging_FileHandler_idl__
#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
#include <com/sun/star/lang/IllegalArgumentException.idl>
#endif
#ifndef __com_sun_star_beans_NamedValue_idl__
#include <com/sun/star/beans/NamedValue.idl>
#endif
//=============================================================================
module com { module sun { module star { module logging {
interface XLogHandler;
//=============================================================================
/** specifies a component implementing a log handler whose output
channel is a file.
<p>The handler will use the <code>Encoding</code> attribute of <type>XLogHandler</type>
to determine how to encode strings before actually writing them to the output
file.</p>
@see XLogHandler::Encoding
@since OpenOffice 2.3
*/
service FileHandler : XLogHandler
{
/** creates a log handler whose output is directed to a file given by URL.
@param FileURL
the URL of the file to be created. This URL is resolved using the
<type scope="::com::sun::star::util">PathSubstitution</type> service. That
is, it is allowed to include placeholders such as <code>$(userurl)</code>.
*/
create( [in] string FileURL );
/** creates an instance of the log handler, using generic settings
@param Settings
contains the initial settings for the log handler
<p>The following settings are recognized and supported:
<ul><li><code>Encoding</code> - denotes the initial value of the <member>XLogHandler::Encoding</member></li>
<li><code>Formatter</code> - denotes the initial value of the <member>XLogHandler::Formatter</member></li>
<li><code>Level</code> - denotes the initial value of the <member>XLogHandler::Level</member></li>
</ul></p>
<p>Additionally, a setting name <code>FileURL</code> is recognized. It must be of type
string, and denotes the file URL to which the handler's output should be directed.</p>
<p>At least the URL argument must be present in the settings.</p>
@throws ::com::sun::star::lang::IllegalArgumentException
if <arg>Settings</args> contains settings whose value is of the wrong type.
*/
createWithSettings( [in] sequence< ::com::sun::star::beans::NamedValue > Settings )
raises ( ::com::sun::star::lang::IllegalArgumentException );
};
//=============================================================================
}; }; }; };
//=============================================================================
#endif