6feea0f639
2008/03/31 15:59:27 rt 1.4.500.1: #i87441# Change license header to LPGL v3.
87 lines
3.5 KiB
Text
87 lines
3.5 KiB
Text
/*************************************************************************
|
|
*
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
*
|
|
* Copyright 2008 by Sun Microsystems, Inc.
|
|
*
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
|
*
|
|
* $RCSfile: XBinaryStreamResolver.idl,v $
|
|
* $Revision: 1.5 $
|
|
*
|
|
* This file is part of OpenOffice.org.
|
|
*
|
|
* OpenOffice.org is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU Lesser General Public License version 3
|
|
* only, as published by the Free Software Foundation.
|
|
*
|
|
* OpenOffice.org is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Lesser General Public License version 3 for more details
|
|
* (a copy is included in the LICENSE file that accompanied this code).
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
* version 3 along with OpenOffice.org. If not, see
|
|
* <http://www.openoffice.org/license.html>
|
|
* for a copy of the LGPLv3 License.
|
|
*
|
|
************************************************************************/
|
|
#ifndef __com_sun_star_document_XBinaryStreamResolver_idl__
|
|
#define __com_sun_star_document_XBinaryStreamResolver_idl__
|
|
|
|
#ifndef __com_sun_star_uno_XInterface_idl__
|
|
#include <com/sun/star/uno/XInterface.idl>
|
|
#endif
|
|
#ifndef __com_sun_star_io_XInputStream_idl__
|
|
#include <com/sun/star/io/XInputStream.idl>
|
|
#endif
|
|
#ifndef __com_sun_star_io_XOututStream_idl__
|
|
#include <com/sun/star/io/XOutputStream.idl>
|
|
#endif
|
|
|
|
//=============================================================================
|
|
|
|
module com { module sun { module star { module document {
|
|
|
|
//=============================================================================
|
|
|
|
/**
|
|
<p>This interface encapsulates functionality to get/resolve binary data streams.
|
|
It is used to transform binary data to an url or to transform an url to binary
|
|
data. The binary data is represented through input and output streams.</p>
|
|
|
|
<p>In the case of transforming an url to binary data, the <code>getInputStream</code>
|
|
method is used. This returns a <type scope="com::sun::star::io">XInputStream</type>
|
|
from which the binary data, transformed from the given url, can be read.</p>
|
|
|
|
<p>In the case of transforming binary data to an url, a
|
|
<type scope="com::sun::star::io">XOutputStream</type> is created first to write
|
|
the binary data to. After this, the <code>resolveOutputStream</code> method can
|
|
be used to transform the binary data, represented through the
|
|
<type scope="com::sun::star::io">XOutputStream</type> interface, to an url.</p>
|
|
*/
|
|
published interface XBinaryStreamResolver: com::sun::star::uno::XInterface
|
|
{
|
|
/** converts the given URL from the source URL namespace to an input stream,
|
|
from which binary data can be read
|
|
*/
|
|
com::sun::star::io::XInputStream getInputStream( [in] string aURL );
|
|
|
|
/** creates an output stream, to which binary data can be written.
|
|
After writing, an URL can be retrieved by a call to
|
|
<method>XBinaryStreamResolver::resolveOutputStream</method>.
|
|
*/
|
|
com::sun::star::io::XOutputStream createOutputStream();
|
|
|
|
/** converts the output stream, data has been written to, to an URL in
|
|
source URL namespace.
|
|
*/
|
|
string resolveOutputStream( [in] com::sun::star::io::XOutputStream aBinaryStream );
|
|
};
|
|
|
|
//=============================================================================
|
|
|
|
}; }; }; };
|
|
|
|
#endif
|