diff options
Diffstat (limited to 'udkapi/com/sun/star/io')
55 files changed, 4432 insertions, 0 deletions
diff --git a/udkapi/com/sun/star/io/AlreadyConnectedException.idl b/udkapi/com/sun/star/io/AlreadyConnectedException.idl new file mode 100644 index 000000000000..4430eacda8ad --- /dev/null +++ b/udkapi/com/sun/star/io/AlreadyConnectedException.idl @@ -0,0 +1,56 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_AlreadyConnectedException_idl__ +#define __com_sun_star_io_AlreadyConnectedException_idl__ + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::AlreadyConnectedException +/** is thrown when a client tries to connect to a resource to which he is + already connected. + */ +exception AlreadyConnectedException: com::sun::star::io::IOException +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/BufferSizeExceededException.idl b/udkapi/com/sun/star/io/BufferSizeExceededException.idl new file mode 100644 index 000000000000..881ae786b1cc --- /dev/null +++ b/udkapi/com/sun/star/io/BufferSizeExceededException.idl @@ -0,0 +1,60 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_BufferSizeExceededException_idl__ +#define __com_sun_star_io_BufferSizeExceededException_idl__ + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::BufferSizeExceededException +/** is thrown by instances which need to buffer data. + <p>It indicates that not enough system resources are available for + extending the buffer. (May also indicate that the internal buffer + has grown to a larger size than 2G. Some current implementations do + not support larger buffers.) + </p> + */ +published exception BufferSizeExceededException: com::sun::star::io::IOException +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/ConnectException.idl b/udkapi/com/sun/star/io/ConnectException.idl new file mode 100644 index 000000000000..f67ae57a0e78 --- /dev/null +++ b/udkapi/com/sun/star/io/ConnectException.idl @@ -0,0 +1,57 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_ConnectException_idl__ +#define __com_sun_star_io_ConnectException_idl__ + +#ifndef __com_sun_star_io_SocketException_idl__ +#include <com/sun/star/io/SocketException.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::ConnectException +/** Signals that an error occurred while attempting to connect a + socket to a remote address and port. Typically, the connection + was refused remotely (e.g., no process is listening on the remote + address/port). + */ +exception ConnectException: com::sun::star::io::SocketException +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/DataInputStream.idl b/udkapi/com/sun/star/io/DataInputStream.idl new file mode 100644 index 000000000000..df11692395e0 --- /dev/null +++ b/udkapi/com/sun/star/io/DataInputStream.idl @@ -0,0 +1,81 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_DataInputStream_idl__ +#define __com_sun_star_io_DataInputStream_idl__ + +#ifndef __com_sun_star_io_XDataInputStream_idl__ +#include <com/sun/star/io/XDataInputStream.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSink_idl__ +#include <com/sun/star/io/XActiveDataSink.idl> +#endif + +#ifndef __com_sun_star_io_XConnectable_idl__ +#include <com/sun/star/io/XConnectable.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: service com::sun::star::io::DataInputStream +/** reads structured data from a chained <type>XInputStream</type>. + <p> + An implementation of this service in general does not need + to buffer data itself. + + @see com::sun::star::io::ObjectInputStream + */ +published service DataInputStream +{ + /** allows to read structured data. + */ + interface com::sun::star::io::XDataInputStream; + + /** used to plug the inputstream-data-source. + A plain input stream is sufficient. + */ + interface com::sun::star::io::XActiveDataSink; + + /** Allows to chain the DataInputStream, so that + */ + interface com::sun::star::io::XConnectable; + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/DataOutputStream.idl b/udkapi/com/sun/star/io/DataOutputStream.idl new file mode 100644 index 000000000000..9bfe73312192 --- /dev/null +++ b/udkapi/com/sun/star/io/DataOutputStream.idl @@ -0,0 +1,71 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_DataOutputStream_idl__ +#define __com_sun_star_io_DataOutputStream_idl__ + +#ifndef __com_sun_star_io_XDataOutputStream_idl__ +#include <com/sun/star/io/XDataOutputStream.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSource_idl__ +#include <com/sun/star/io/XActiveDataSource.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: service com::sun::star::io::DataOutputStream +/** writes structured data to a chained <type>XOutputStream</type>. + + <p> + An implementation of this service in general does not need + to buffer data itself. + */ +published service DataOutputStream +{ + /** allows to write structured data. + */ + interface com::sun::star::io::XDataOutputStream; + + /** used to plug the outputstream-data-sink. + <p>A plain output stream is sufficient. + */ + interface com::sun::star::io::XActiveDataSource; +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/DataTransferEvent.idl b/udkapi/com/sun/star/io/DataTransferEvent.idl new file mode 100644 index 000000000000..d78f6eb4d64c --- /dev/null +++ b/udkapi/com/sun/star/io/DataTransferEvent.idl @@ -0,0 +1,63 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_DataTransferEvent_idl__ +#define __com_sun_star_io_DataTransferEvent_idl__ + +#ifndef __com_sun_star_lang_EventObject_idl__ +#include <com/sun/star/lang/EventObject.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: struct com::sun::star::io::DataTransferEvent +/** is broadcast by a filter. + @see XDataTransferEventListener + */ +published struct DataTransferEvent: com::sun::star::lang::EventObject +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: field com::sun::star::io::DataTransferEvent::aException + /** specifies an occurred exception. + */ + any aException; + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/FilePermission.idl b/udkapi/com/sun/star/io/FilePermission.idl new file mode 100644 index 000000000000..3511e2c7e2a5 --- /dev/null +++ b/udkapi/com/sun/star/io/FilePermission.idl @@ -0,0 +1,84 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_FilePermission_idl__ +#define __com_sun_star_io_FilePermission_idl__ +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +/** This permission represents access to a file or directory. + A FilePermission consists of a file url and a set of actions valid for that url. + <p> + The path of the file url that ends in <code>"/*"</code> indicates all the files and + directories contained in that directory. A path that ends with <code>"/-"</code> + indicates (recursively) all files and subdirectories contained in that + directory. A file url string consisting of the special token + <code>"<<ALL FILES>>"</code> matches any file. + <br> + Note: A file url string consisting of a single <code>"*"</code> indicates all the files + in the current directory, while a string consisting of a single <code>"-"</code> indicates + all the files in the current directory and (recursively) all files and + subdirectories contained in the current directory. + <br> + The actions to be granted is a list of one or more comma-separated keywords. + The possible keywords are <code>"read"</code>, <code>"write"</code>, + <code>"execute"</code>, and <code>"delete"</code>. + Their meaning is defined as follows: + <ul> + <li><code>read</code> -- read permission</li> + <li><code>write</code> -- write permission</li> + <li><code>execute</code> -- execute permission</li> + <li><code>delete</code> -- delete permission</li> + </ul><br> + The actions string is processed case-insensitive. + </p> + + @attention + Be careful when granting FilePermissions. Think about the implications of + granting read and especially write access to various files and directories. + The <code>"<<ALL FILES>>"</code> permission with write action is + especially dangerous. This grants permission to write to the entire file system. + + @since OOo 1.1.2 +*/ +published struct FilePermission +{ + /** target file url + */ + string URL; + /** comma separated actions list + */ + string Actions; +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/IOException.idl b/udkapi/com/sun/star/io/IOException.idl new file mode 100644 index 000000000000..6b2da1b6351d --- /dev/null +++ b/udkapi/com/sun/star/io/IOException.idl @@ -0,0 +1,55 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_IOException_idl__ +#define __com_sun_star_io_IOException_idl__ + +#ifndef __com_sun_star_uno_Exception_idl__ +#include <com/sun/star/uno/Exception.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::IOException +/** is thrown when an input or output error has occurred. + */ +published exception IOException: com::sun::star::uno::Exception +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/MarkableInputStream.idl b/udkapi/com/sun/star/io/MarkableInputStream.idl new file mode 100644 index 000000000000..65058592cc06 --- /dev/null +++ b/udkapi/com/sun/star/io/MarkableInputStream.idl @@ -0,0 +1,78 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_DataInputStream_idl__ +#define __com_sun_star_io_DataInputStream_idl__ + +#ifndef __com_sun_star_io_XMarkableStream_idl__ +#include <com/sun/star/io/XMarkableStream.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSink_idl__ +#include <com/sun/star/io/XActiveDataSink.idl> +#endif + +#ifndef __com_sun_star_io_XConnectable_idl__ +#include <com/sun/star/io/XConnectable.idl> +#endif + + +module com { module sun { module star { module io { + +//========================================================================== +/** allows to set marks in an inputstream and to later jump back to these + marks. + <p>The implementation reads the original data from the input stream, + that has been set previously at the <type>XActiveDataSink</type> + interface. In general the implementation must buffer the data. </p> + */ +published service MarkableInputStream +{ + /** allows to access the data of this stream + */ + interface com::sun::star::io::XInputStream; + + /** allows to create marks at the current position + and to set the current position. + */ + interface com::sun::star::io::XMarkableStream; + + /** allows to access to the underlying source + of this stream. + */ + interface com::sun::star::io::XActiveDataSink; + + /** allows to navigate via a chain of streams */ + interface com::sun::star::io::XConnectable; + +}; + + +}; }; }; }; + + + +#endif diff --git a/udkapi/com/sun/star/io/MarkableOutputStream.idl b/udkapi/com/sun/star/io/MarkableOutputStream.idl new file mode 100644 index 000000000000..576f7f56452a --- /dev/null +++ b/udkapi/com/sun/star/io/MarkableOutputStream.idl @@ -0,0 +1,83 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_DataInputStream_idl__ +#define __com_sun_star_io_DataInputStream_idl__ + +#ifndef __com_sun_star_io_XMarkableStream_idl__ +#include <com/sun/star/io/XMarkableStream.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSink_idl__ +#include <com/sun/star/io/XActiveDataSource.idl> +#endif + +#ifndef __com_sun_star_io_XConnectable_idl__ +#include <com/sun/star/io/XConnectable.idl> +#endif + + +module com { module sun { module star { module io { + +//========================================================================== +/** allows to set marks in an outputstream and to later jump back to these + marks. + <p>The implementation stores the data as long as marks exists + and later writes these data into the output stream, + that has been set previously at the <type>XActiveDataSource</type> + interface. </p> + */ +published service MarkableOutputStream +{ + /** allows to write data at the current position. + <p> Flushing the outputstream will only flush data, + which was written before the first non-deleted mark, + because data after the first non-deleted mark + may be modified by later jumpToMark()/writeBytes() calls. + */ + interface com::sun::star::io::XOutputStream; + + /** allows to create marks at the current position + and to set the current position. + */ + interface com::sun::star::io::XMarkableStream; + + /** allows to access to the underlying sink + of this stream. + */ + interface com::sun::star::io::XActiveDataSource; + + /** allows to navigate via a chain of streams */ + interface com::sun::star::io::XConnectable; + +}; + + +}; }; }; }; + + + +#endif diff --git a/udkapi/com/sun/star/io/NoRouteToHostException.idl b/udkapi/com/sun/star/io/NoRouteToHostException.idl new file mode 100644 index 000000000000..c37663eaf55d --- /dev/null +++ b/udkapi/com/sun/star/io/NoRouteToHostException.idl @@ -0,0 +1,56 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_NoRouteToHostException_idl__ +#define __com_sun_star_io_NoRouteToHostException_idl__ + +#ifndef __com_sun_star_io_SocketException_idl__ +#include <com/sun/star/io/SocketException.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::NoRouteToHostException +/** Signals that an error occurred while attempting to connect a socket to + a remote address and port. Typically, the remote host cannot be reached + because of an intervening firewall, or if an intermediate router is down. + */ +exception NoRouteToHostException: com::sun::star::io::SocketException +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/NotConnectedException.idl b/udkapi/com/sun/star/io/NotConnectedException.idl new file mode 100644 index 000000000000..956e10896f96 --- /dev/null +++ b/udkapi/com/sun/star/io/NotConnectedException.idl @@ -0,0 +1,56 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_NotConnectedException_idl__ +#define __com_sun_star_io_NotConnectedException_idl__ + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::NotConnectedException +/** is thrown when a read/write operation is tried on an instance that has + not been chained properly. + */ +published exception NotConnectedException: com::sun::star::io::IOException +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/ObjectInputStream.idl b/udkapi/com/sun/star/io/ObjectInputStream.idl new file mode 100644 index 000000000000..69e98d3a1d6e --- /dev/null +++ b/udkapi/com/sun/star/io/ObjectInputStream.idl @@ -0,0 +1,109 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_ObjectInputStream_idl__ +#define __com_sun_star_io_ObjectInputStream_idl__ + +#ifndef __com_sun_star_io_XObjectInputStream_idl__ +#include <com/sun/star/io/XObjectInputStream.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSink_idl__ +#include <com/sun/star/io/XActiveDataSink.idl> +#endif + +#ifndef __com_sun_star_io_XConnectable_idl__ +#include <com/sun/star/io/XConnectable.idl> +#endif + +#ifndef __com_sun_star_io_XMarkableStream_idl__ +#include <com/sun/star/io/XMarkableStream.idl> +#endif + + +//============================================================================= + + module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: service com::sun::star::io::ObjectInputStream +/** is a stream which allows reading the data of persistent objects. + + <p>Implementations of this service must fulfill the specifications of the + <type>DataInputStream</type> service. It must be chained to an + <type>XMarkableStream</type>. Therefore, it provides the + <type>XMarkableStream</type> interface, and delegates the calls to the + chained object. </p> + <p>The written objects are held until this instance is destroyed. + The references to the objects are read as four-byte integers. + Data format reads:</p> + + <pre> + short InfoLength + long ObjectReference // 0 indicates no object + UTF ServiceName // length of 0 indicates this is only a reference + long ObjectLength // 0 if it is a reference or no object, otherwise the len of the object data + Object ObjectData // the data of the object + ... // skipping additional data + </pre> + + @guarantees + <ul> + <li>-thread safe</li> + <li>-allow buffer size is 2 ^ 31 -1</li> + <li>-maximum object reference identifier must be the number of objects. </li> + <li>-object reference identifier 0 indicates no object</li> + <li>-skip addition data</li> + <li>-set the stream position behind the object data</li> + </ul> + */ +published service ObjectInputStream +{ + /** allows to read the data from the stream. + */ + interface com::sun::star::io::XObjectInputStream; + + /** allows to set the underlying inputstream */ + interface com::sun::star::io::XActiveDataSink; + + /** allows to navigate via a chain of streams */ + interface com::sun::star::io::XConnectable; + + /** allows to set marks within the stream. The implementation + may forward calls to this interface to a chained markablestream. */ + interface com::sun::star::io::XMarkableStream; + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/ObjectOutputStream.idl b/udkapi/com/sun/star/io/ObjectOutputStream.idl new file mode 100644 index 000000000000..3669db12b723 --- /dev/null +++ b/udkapi/com/sun/star/io/ObjectOutputStream.idl @@ -0,0 +1,96 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_ObjectOutputStream_idl__ +#define __com_sun_star_io_ObjectOutputStream_idl__ + +#ifndef __com_sun_star_io_XObjectOutputStream_idl__ +#include <com/sun/star/io/XObjectOutputStream.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSource_idl__ +#include <com/sun/star/io/XActiveDataSource.idl> +#endif + +#ifndef __com_sun_star_io_XConnectable_idl__ +#include <com/sun/star/io/XConnectable.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: service com::sun::star::io::ObjectOutputStream +/** is a stream which allows writing the data of persistent objects. + + <p>Implementations of this service must fulfill the specifications of the + <type>DataOutputStream</type> service; futhermore, the stream needs to be chained to a + <type>XMarkableStream</type>. Therefore, it also provides the <type>XMarkableStream</type> + interface, but it delegates the calls to the chained object. + The written objects are held until this instance is destroyed. + The references to the objects are written as four-byte integers + and begin at 1. Data format is written: </p> + <pre> + short InfoLength + long ObjectReference // 0 indicates no object + UTF ServiceName // length of 0 indicates this is only a reference + long ObjectLength // 0 if it is a reference or no object, otherwise the len of the object data + Object ObjectData // the data of the object + </pre> + + @garantees + <ul> + <li>-thread safe </li> + <li>-allow buffer size is 2 ^ 31 -1 </li> + <li>-maximum object reference identifier is the number of objects. </li> + <li>-object reference identifier 0 indicates no object </li> + </ul> + */ +published service ObjectOutputStream +{ + /** allows to write the data to the stream. + */ + interface com::sun::star::io::XObjectOutputStream; + + /** allows to set the underlying outputstream */ + interface com::sun::star::io::XActiveDataSource; + + /** allows to navigate via a chain of streams */ + interface com::sun::star::io::XConnectable; + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/Pipe.idl b/udkapi/com/sun/star/io/Pipe.idl new file mode 100644 index 000000000000..256f6357a447 --- /dev/null +++ b/udkapi/com/sun/star/io/Pipe.idl @@ -0,0 +1,72 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_Pipe_idl__ +#define __com_sun_star_io_Pipe_idl__ + +#ifndef __com_sun_star_io_XOutputStream_idl__ +#include <com/sun/star/io/XOutputStream.idl> +#endif + +#ifndef __com_sun_star_io_XInputStream_idl__ +#include <com/sun/star/io/XInputStream.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: service com::sun::star::io::Pipe +/** the implementation of an output stream and an input stream. + <p> + All data written through the outputstream is buffered until it is + read again from the input stream. Often two different threads access + input and outputstream. + + <p> With the pipe-service, an outputstream can be converted into an + input stream at the cost of an additional buffer. + */ +published service Pipe +{ + // DocMerge: empty anyway + interface com::sun::star::io::XOutputStream; + + // DocMerge: empty anyway + interface com::sun::star::io::XInputStream; + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/Pump.idl b/udkapi/com/sun/star/io/Pump.idl new file mode 100644 index 000000000000..7e52e917d979 --- /dev/null +++ b/udkapi/com/sun/star/io/Pump.idl @@ -0,0 +1,78 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_Pipe_idl__ +#define __com_sun_star_io_Pipe_idl__ + +#ifndef __com_sun_star_io_XActiveDataSource_idl__ +#include <com/sun/star/io/XActiveDataSource.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSink_idl__ +#include <com/sun/star/io/XActiveDataSink.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataControl_idl__ +#include <com/sun/star/io/XActiveDataControl.idl> +#endif + + +//============================================================================= + + module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: service com::sun::star::io::Pump +/** the implementation of a data source and a data sink. + <p>A thread will be created that reads from the input stream and writes + the data to the connected output stream. Data will not be buffered by + this service. </p> + + */ +published service Pump +{ + /** allows to set the outputstream + */ + interface com::sun::star::io::XActiveDataSource; + + /** allows to set the inputstream + */ + interface com::sun::star::io::XActiveDataSink; + + /** allows listener administration and starting/stopping the pump */ + interface com::sun::star::io::XActiveDataControl; + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/SequenceInputStream.idl b/udkapi/com/sun/star/io/SequenceInputStream.idl new file mode 100644 index 000000000000..e480b280c0bd --- /dev/null +++ b/udkapi/com/sun/star/io/SequenceInputStream.idl @@ -0,0 +1,62 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_SequenceInputStream_idl__ +#define __com_sun_star_io_SequenceInputStream_idl__ + +#ifndef __com_sun_star_io_XSeekableInputStream_idl__ +#include <com/sun/star/io/XSeekableInputStream.idl> +#endif + +#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ +#include <com/sun/star/lang/IllegalArgumentException.idl> +#endif + + +//============================================================================= + + module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: service com::sun::star::io::SequenceInputStream +/** This service allows to wrap a sequence of bytes with a stream object. + */ +published service SequenceInputStream : XSeekableInputStream +{ + /** allows to create a stream based on the sequence. + */ + createStreamFromSequence( [in] sequence<byte> aData ); +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/SequenceOutputStream.idl b/udkapi/com/sun/star/io/SequenceOutputStream.idl new file mode 100644 index 000000000000..7822ac991004 --- /dev/null +++ b/udkapi/com/sun/star/io/SequenceOutputStream.idl @@ -0,0 +1,48 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_SequenceOutputStream_idl__ +#define __com_sun_star_io_SequenceOutputStream_idl__ + +#ifndef __com_sun_star_io_XSequenceOutputStream_idl__ +#include <com/sun/star/io/XSequenceOutputStream.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= +/** This service allows to wrap a sequence of bytes with a output stream object. + */ +service SequenceOutputStream : XSequenceOutputStream; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/SocketException.idl b/udkapi/com/sun/star/io/SocketException.idl new file mode 100644 index 000000000000..2d53f43c0579 --- /dev/null +++ b/udkapi/com/sun/star/io/SocketException.idl @@ -0,0 +1,55 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_SocketException_idl__ +#define __com_sun_star_io_SocketException_idl__ + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::SocketException +/** Thrown to indicate that there is an error in the underlying + protocol, such as a TCP error. + */ +exception SocketException: com::sun::star::io::IOException +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/TempFile.idl b/udkapi/com/sun/star/io/TempFile.idl new file mode 100644 index 000000000000..84d16e362db0 --- /dev/null +++ b/udkapi/com/sun/star/io/TempFile.idl @@ -0,0 +1,47 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_TempFile_idl__ +#define __com_sun_star_io_TempFile_idl__ + +#ifndef __com_sun_star_io_XTempFile_idl__ +#include <com/sun/star/io/XTempFile.idl> +#endif + + +//========================================================================= +module com { module sun { module star { module io { + +//======================================================================== +/** This service allows to get access to temp files. + */ +service TempFile : XTempFile; + +//========================================================================= + +}; }; }; }; + +#endif
\ No newline at end of file diff --git a/udkapi/com/sun/star/io/TextInputStream.idl b/udkapi/com/sun/star/io/TextInputStream.idl new file mode 100644 index 000000000000..6f5e8dd00ac5 --- /dev/null +++ b/udkapi/com/sun/star/io/TextInputStream.idl @@ -0,0 +1,70 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_TextInputStream_idl__ +#define __com_sun_star_io_TextInputStream_idl__ + +#ifndef __com_sun_star_io_XTextInputStream_idl__ +#include <com/sun/star/io/XTextInputStream.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSink_idl__ +#include <com/sun/star/io/XActiveDataSink.idl> +#endif + +#ifndef __com_sun_star_io_XConnectable_idl__ +#include <com/sun/star/io/XConnectable.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= +/** provides functionality to read text data from a + <type scope="com::sun::star::io">XInputStream</type> + that initially has to be passed to the method + <member>XActiveDataSink::setInputStream()</member>. + + <p>For details about the text functionality see + <type scope="com::sun::star::io">XTextInputStream</type>. + */ +published service TextInputStream +{ + /// Interface to read text data + interface com::sun::star::io::XTextInputStream; + + /// Interface to specify the used <type scope="com::sun::star::io">XInputStream</type> + interface com::sun::star::io::XActiveDataSink; + +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/TextOutputStream.idl b/udkapi/com/sun/star/io/TextOutputStream.idl new file mode 100644 index 000000000000..879b58070580 --- /dev/null +++ b/udkapi/com/sun/star/io/TextOutputStream.idl @@ -0,0 +1,66 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_TextOutputStream_idl__ +#define __com_sun_star_io_TextOutputStream_idl__ + +#ifndef __com_sun_star_io_XTextOutputStream_idl__ +#include <com/sun/star/io/XTextOutputStream.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSource_idl__ +#include <com/sun/star/io/XActiveDataSource.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= +/** provides functionality to write text data to a + <type scope="com::sun::star::io">XOutputStream</type> + that initially has to be passed to the method + <member>XActiveDataSource::setOutputStream()</member>. + + <p>For details about the text functionality see + <type scope="com::sun::star::io">XTextOutputStream</type>. + */ +published service TextOutputStream +{ + /// Interface to write text data + interface com::sun::star::io::XTextOutputStream; + + /// Interface to specify the used <type scope="com::sun::star::io">XOutputStream</type> + interface com::sun::star::io::XActiveDataSource; + +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/UnexpectedEOFException.idl b/udkapi/com/sun/star/io/UnexpectedEOFException.idl new file mode 100644 index 000000000000..234174a69c32 --- /dev/null +++ b/udkapi/com/sun/star/io/UnexpectedEOFException.idl @@ -0,0 +1,56 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_UnexpectedEOFException_idl__ +#define __com_sun_star_io_UnexpectedEOFException_idl__ + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::UnexpectedEOFException +/** is thrown when the <code>EOF/code> is reached during reading a datatype + (<code>long</code>, <code>string</code>, etc.). + */ +published exception UnexpectedEOFException: com::sun::star::io::IOException +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/UnknownHostException.idl b/udkapi/com/sun/star/io/UnknownHostException.idl new file mode 100644 index 000000000000..6cb2cf423b5c --- /dev/null +++ b/udkapi/com/sun/star/io/UnknownHostException.idl @@ -0,0 +1,54 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_UnknownHostException_idl__ +#define __com_sun_star_io_UnknownHostException_idl__ + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::UnknownHostException +/** is thrown when the IP address of a host could not be determined. + */ +exception UnknownHostException: com::sun::star::io::IOException +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/WrongFormatException.idl b/udkapi/com/sun/star/io/WrongFormatException.idl new file mode 100644 index 000000000000..8be8f31c2c1c --- /dev/null +++ b/udkapi/com/sun/star/io/WrongFormatException.idl @@ -0,0 +1,56 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_WrongFormatException_idl__ +#define __com_sun_star_io_WrongFormatException_idl__ + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: exception com::sun::star::io::WrongFormatException +/** is thrown when inconsistent data comes up while reading a complex + data type (<code>string</code> or object). + */ +published exception WrongFormatException: com::sun::star::io::IOException +{ +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XActiveDataControl.idl b/udkapi/com/sun/star/io/XActiveDataControl.idl new file mode 100644 index 000000000000..9e53a38b3d44 --- /dev/null +++ b/udkapi/com/sun/star/io/XActiveDataControl.idl @@ -0,0 +1,107 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XActiveDataControl_idl__ +#define __com_sun_star_io_XActiveDataControl_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_XStreamListener_idl__ +#include <com/sun/star/io/XStreamListener.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XActiveDataControl +/** makes it possible to control an active data source. + + <p>This interface should be supported by objects which implement + <type>XActiveDataSource</type> or <type>XActiveDataSink</type>.</p> + */ +published interface XActiveDataControl: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XActiveDataControl::addListener + /** registers an object to receive events from this data source. + <p>It is suggested to allow multiple registration of the same listener, + thus for each time a listener is added, it has to be removed. + */ + void addListener( [in] com::sun::star::io::XStreamListener aListener ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XActiveDataControl::removeListener + /** unregisters an object to receive events from this data source. + + <p>It is suggested to allow multiple registration of the same listener, + thus for each time a listener is added, it has to be removed. + */ + void removeListener( [in] com::sun::star::io::XStreamListener aListener ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XActiveDataControl::start + /** starts I/O. + + <p>Either <member>XActiveDataControl::setInputStream()</member> or + <member>XActiveDataControl::setOutputStream()</member> must be called beforehand. + </p> + + <p>This method does not block the thread, so reading is + generally not finished when the method returns. </p> + */ + void start(); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XActiveDataControl::terminate + /** does a weak abort. + + <p>It closes all connected resources and calls + <member>XInputStream::close</member> or + <member>XOutputStream::close</member> and fires the + <member>XStreamListener::terminated</member>-event.</p> + */ + void terminate(); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XActiveDataSink.idl b/udkapi/com/sun/star/io/XActiveDataSink.idl new file mode 100644 index 000000000000..3602e4d7c538 --- /dev/null +++ b/udkapi/com/sun/star/io/XActiveDataSink.idl @@ -0,0 +1,81 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XActiveDataSink_idl__ +#define __com_sun_star_io_XActiveDataSink_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 + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XActiveDataSink +/** makes it possible to read the corresponding object from an input stream. + + <p>If you want to allow control from outside, also implement the + <type>XActiveDataControl</type> interface. </p> + */ +published interface XActiveDataSink: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XActiveDataSink::setInputStream + /** plugs the input stream. + + <p>If <type>XConnectable</type> is also implemented, this + method should query <var>aStream</var> for an + <type>XConnectable</type> and connect both.</p> + */ + void setInputStream( [in] com::sun::star::io::XInputStream aStream ); + + //------------------------------------------------------------------------- + + // DocMerge from idl: method com::sun::star::io::XActiveDataSink::getInputStream + /** @returns + the plugged stream. + */ + com::sun::star::io::XInputStream getInputStream(); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XActiveDataSource.idl b/udkapi/com/sun/star/io/XActiveDataSource.idl new file mode 100644 index 000000000000..441dedf5f371 --- /dev/null +++ b/udkapi/com/sun/star/io/XActiveDataSource.idl @@ -0,0 +1,81 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XActiveDataSource_idl__ +#define __com_sun_star_io_XActiveDataSource_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_XOutputStream_idl__ +#include <com/sun/star/io/XOutputStream.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XActiveDataSource +/** has to be implemented if the class should be able to write into an output + stream. + @see XActiveDataControl. + */ +published interface XActiveDataSource: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XActiveDataSource::setOutputStream + /** plugs the output stream. + + <p>If <type>XConnectable</type> is also implemented, this + method should query <var>aStream</var> for a + <type>XConnectable</type> and connect both. + </p> + */ + void setOutputStream( [in] com::sun::star::io::XOutputStream aStream ); + + //------------------------------------------------------------------------- + + // DocMerge from idl: method com::sun::star::io::XActiveDataSource::getOutputStream + /** @returns + the plugged stream. + */ + com::sun::star::io::XOutputStream getOutputStream(); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XActiveDataStreamer.idl b/udkapi/com/sun/star/io/XActiveDataStreamer.idl new file mode 100644 index 000000000000..686981525d90 --- /dev/null +++ b/udkapi/com/sun/star/io/XActiveDataStreamer.idl @@ -0,0 +1,82 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XActiveDataStreamer_idl__ +#define __com_sun_star_io_XActiveDataStreamer_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_XStream_idl__ +#include <com/sun/star/io/XStream.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XActiveDataStreamer +/** makes it possible to read and write the corresponding stream. + + + <p>If you want to allow control from outside, also implement the + <type>XActiveDataControl</type> interface. </p> + */ +published interface XActiveDataStreamer: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XActiveDataStreamer::setStream + /** plugs the input/output stream. + + <p>If <type>XConnectable</type> is also implemented, this + method should query <var>aStream</var> for a + <type>XConnectable</type> and connect both.</p> + */ + void setStream( [in] com::sun::star::io::XStream aStream ); + + //------------------------------------------------------------------------- + + // DocMerge from idl: method com::sun::star::io::XActiveDataStreamer::getStream + /** @returns + the plugged stream. + */ + com::sun::star::io::XStream getStream(); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XAsyncOutputMonitor.idl b/udkapi/com/sun/star/io/XAsyncOutputMonitor.idl new file mode 100644 index 000000000000..aa5a0ba1802c --- /dev/null +++ b/udkapi/com/sun/star/io/XAsyncOutputMonitor.idl @@ -0,0 +1,95 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XAsyncOutputMonitor_idl__ +#define __com_sun_star_io_XAsyncOutputMonitor_idl__ + +#ifndef __com_sun_star_io_IOException_idl__ +#include "com/sun/star/io/IOException.idl" +#endif +#ifndef __com_sun_star_uno_XInterface_idl__ +#include "com/sun/star/uno/XInterface.idl" +#endif + +module com { module sun { module star { module io { + +/** + An optional companion interface to + <type scope="com::sun::star::io">XOutputStream</type> that supports scenarios + where <member scope="com::sun::star::io">XOutputStream::writeBytes</member> + operates asynchronously and does not necessarily report any errors. + + <p>A typical scenario where this interface is useful is when an + <type scope="com::sun::star::io">XOutputStream</type> is used to write to a + file via NFS. Normally, any calls to + <member scope="com::sun::star::io">XOutputStream::writeBytes</member> will + execute asynchronously then, in that any potential errors might only be + reported by later calls to + <member scope="com::sun::star::io">XOutputStream::writeBytes</member> or + <member scope="com::sun::star::io">XOutputStream::closeOutput</member>. If + such an output stream shall not be closed immediately after one or more calls + to <member scope="com::sun::star::io">XOutputStream::writeBytes</member>, but + the client wants to know as soon as possible whether writing was successful, + then <member + scope="com::sun::star::io">XAsyncOutputMonitor::waitForCompletion</member> + should be called after the series of calls to + <member scope="com::sun::star::io">XOutputStream::writeBytes</member>.</p> + + @since OOo2.0.0 +*/ +interface XAsyncOutputMonitor { + /** + waits for the completion of any previous calls to + <member scope="com::sun::star::io">XOutputStream::writeBytes</member>, + and reports potentially pending errors. + + <p>Calling this method is potentially expensive (even if the associated + <type scope="com::sun::star::io">XOutputStream</type> represents a local + file not accessed via NFS, for example). This method has a similar + description to + <member scope="com::sun::star::io">XOutputStream::flush</member>. + However, where the semantics of <code>flush</code> are rather vague, + <code>waitForCompletion</code> has very specific semantics—it just + blocks long enough so that any errors encountered during previous calls + to <member scope="com::sun::star::io">XOutputStream::writeBytes</member> + can reliably be reported. It specificially does not guarantee that any + data have savely been stored on a stable physical medium, like a hard + disk (and it is completely unspecified whether <code>flush</code> should + give this guarantee).</p> + + @throws com::sun::star::io::IOException + if any previous call to <member + scope="com::sun::star::io">XOutputStream::writeBytes</member> encountered + such an error, but has not yet reported it (in cases where + <code>writeBytes</code> operates asynchronously). + */ + void waitForCompletion() raises (IOException); +}; + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/XConnectable.idl b/udkapi/com/sun/star/io/XConnectable.idl new file mode 100644 index 000000000000..8286e5add4af --- /dev/null +++ b/udkapi/com/sun/star/io/XConnectable.idl @@ -0,0 +1,94 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XConnectable_idl__ +#define __com_sun_star_io_XConnectable_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + + +//============================================================================= + + module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XConnectable +/** makes it possible to connect data sinks and sources. + + <p>The predecessor-member is the element in the connection that is + nearer to the source of the data. The successor-member is the element + that is further away from the source of the data. (Note that this + classification does not depend on whether the class implements + <type>XInputStream</type> or <type>XOutputStream</type>; it only + depends on the direction of data flow.) </p> + <p>This interface allows generic services to navigate between + arbitrary elements of a connection.</p> + */ +published interface XConnectable: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XConnectable::setPredecessor + /** sets the source of the data flow for this object. + */ + void setPredecessor( [in] com::sun::star::io::XConnectable aPredecessor ); + + //------------------------------------------------------------------------- + + // DocMerge from idl: method com::sun::star::io::XConnectable::getPredecessor + /** @returns + the predecessor of this object. + */ + com::sun::star::io::XConnectable getPredecessor(); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XConnectable::setSuccessor + /** sets the sink of the data flow for this object. + */ + void setSuccessor( [in] com::sun::star::io::XConnectable aSuccessor ); + + //------------------------------------------------------------------------- + + // DocMerge from idl: method com::sun::star::io::XConnectable::getSuccessor + /** @returns + the successor of this object. + */ + com::sun::star::io::XConnectable getSuccessor(); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XDataExporter.idl b/udkapi/com/sun/star/io/XDataExporter.idl new file mode 100644 index 000000000000..672342a8a7a9 --- /dev/null +++ b/udkapi/com/sun/star/io/XDataExporter.idl @@ -0,0 +1,86 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XDataExporter_idl__ +#define __com_sun_star_io_XDataExporter_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_XOutputStream_idl__ +#include <com/sun/star/io/XOutputStream.idl> +#endif + +#ifndef __com_sun_star_lang_XComponent_idl__ +#include <com/sun/star/lang/XComponent.idl> +#endif + +#ifndef __com_sun_star_io_XDataTransferEventListener_idl__ +#include <com/sun/star/io/XDataTransferEventListener.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XDataExporter +/** makes it possible to export data from a component into a data sink. + + <p>Exporter objects are registered for specific components and data types. + </p> + */ +published interface XDataExporter: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataExporter::exportData + /** exports data for a component into an output stream. + */ + [oneway] void exportData( [in] com::sun::star::io::XOutputStream aOutputStream, + [in] com::sun::star::lang::XComponent Component, + [in] com::sun::star::io::XDataTransferEventListener aListener ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataExporter::cancel + /** cancels the export process. + */ + [oneway] void cancel(); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XDataImporter.idl b/udkapi/com/sun/star/io/XDataImporter.idl new file mode 100644 index 000000000000..b395ad91ceb1 --- /dev/null +++ b/udkapi/com/sun/star/io/XDataImporter.idl @@ -0,0 +1,85 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XDataImporter_idl__ +#define __com_sun_star_io_XDataImporter_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_XActiveDataSource_idl__ +#include <com/sun/star/io/XActiveDataSource.idl> +#endif + +#ifndef __com_sun_star_lang_XComponent_idl__ +#include <com/sun/star/lang/XComponent.idl> +#endif + +#ifndef __com_sun_star_io_XDataTransferEventListener_idl__ +#include <com/sun/star/io/XDataTransferEventListener.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XDataImporter +/** makes it possible to import data from a data source into a component. + + <p>Importer objects are registered for specific components and data types.</p> + */ +published interface XDataImporter: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataImporter::importData + /** imports data for a component from an active data source. + */ + [oneway] void importData( [in] com::sun::star::io::XActiveDataSource aActiveSource, + [in] com::sun::star::lang::XComponent Component, + [in] com::sun::star::io::XDataTransferEventListener aListener ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataImporter::cancel + /** cancels the import process. + */ + [oneway] void cancel(); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XDataInputStream.idl b/udkapi/com/sun/star/io/XDataInputStream.idl new file mode 100644 index 000000000000..fc5183e89acc --- /dev/null +++ b/udkapi/com/sun/star/io/XDataInputStream.idl @@ -0,0 +1,134 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XDataInputStream_idl__ +#define __com_sun_star_io_XDataInputStream_idl__ + +#ifndef __com_sun_star_io_XInputStream_idl__ +#include <com/sun/star/io/XInputStream.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XDataInputStream +/** makes it possible to read machine-independent simple data types from a + stream. + @see com::sun::star::io::XDataOutputStream + */ +published interface XDataInputStream: com::sun::star::io::XInputStream +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataInputStream::readBoolean + /** reads in a boolean. It is an 8-bit value. 0 means FALSE; all + other values mean TRUE. + */ + byte readBoolean() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataInputStream::readByte + /** reads an 8-bit byte. + */ + byte readByte() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataInputStream::readChar + /** reads a 16-bit unicode character. + */ + char readChar() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataInputStream::readShort + /** reads a 16-bit big endian integer. + */ + short readShort() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataInputStream::readLong + /** reads a 32-bit big endian integer. + */ + long readLong() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataInputStream::readHyper + /** reads a 64-bit big endian integer. + */ + hyper readHyper() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataInputStream::readFloat + /** reads a 32-bit IEEE float. + */ + float readFloat() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataInputStream::readDouble + /** reads a 64-bit IEEE double. + */ + double readDouble() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataInputStream::readUTF + /** reads a string of UTF encoded characters. + */ + string readUTF() + raises( com::sun::star::io::IOException ); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XDataOutputStream.idl b/udkapi/com/sun/star/io/XDataOutputStream.idl new file mode 100644 index 000000000000..ab64c9920257 --- /dev/null +++ b/udkapi/com/sun/star/io/XDataOutputStream.idl @@ -0,0 +1,134 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XDataOutputStream_idl__ +#define __com_sun_star_io_XDataOutputStream_idl__ + +#ifndef __com_sun_star_io_XOutputStream_idl__ +#include <com/sun/star/io/XOutputStream.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XDataOutputStream +/** makes it possible to write machine-independent simple data types to a + stream. + @see com::sun::star::io::XDataInputStream + */ +published interface XDataOutputStream: com::sun::star::io::XOutputStream +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataOutputStream::writeBoolean + /** writes a boolean. It is an 8-bit value. 0 means FALSE; all other + values mean TRUE. + */ + void writeBoolean( [in] boolean Value ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataOutputStream::writeByte + /** writes an 8-bit byte. + */ + void writeByte( [in] byte Value ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataOutputStream::writeChar + /** writes a 16-bit character. + */ + void writeChar( [in] char Value ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataOutputStream::writeShort + /** writes a 16-bit big endian integer. + */ + void writeShort( [in] short Value ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataOutputStream::writeLong + /** writes a 32-bit big endian integer. + */ + void writeLong( [in] long Value ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataOutputStream::writeHyper + /** writes a 64-bit big endian integer. + */ + void writeHyper( [in] hyper Value ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataOutputStream::writeFloat + /** writes a 32-bit IEEE float. + */ + void writeFloat( [in] float Value ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataOutputStream::writeDouble + /** writes a 64-bit IEEE double. + */ + void writeDouble( [in] double Value ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataOutputStream::writeUTF + /** writes a string in UTF format. + */ + void writeUTF( [in] string Value ) + raises( com::sun::star::io::IOException ); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XDataTransferEventListener.idl b/udkapi/com/sun/star/io/XDataTransferEventListener.idl new file mode 100644 index 000000000000..2cc7d83a9e73 --- /dev/null +++ b/udkapi/com/sun/star/io/XDataTransferEventListener.idl @@ -0,0 +1,73 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XDataTransferEventListener_idl__ +#define __com_sun_star_io_XDataTransferEventListener_idl__ + +#ifndef __com_sun_star_lang_XEventListener_idl__ +#include <com/sun/star/lang/XEventListener.idl> +#endif + +#ifndef __com_sun_star_io_DataTransferEvent_idl__ +#include <com/sun/star/io/DataTransferEvent.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XDataTransferEventListener +/** is used to receive callbacks from an importer or exporter. + */ +published interface XDataTransferEventListener: com::sun::star::lang::XEventListener +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataTransferEventListener::finished + /** is called when an import or export process has finished. + */ + [oneway] void finished( [in] com::sun::star::io::DataTransferEvent aEvent ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XDataTransferEventListener::cancelled + /** is called when an import or export process has been cancelled. + */ + [oneway] void cancelled( [in] com::sun::star::io::DataTransferEvent aEvent ); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XInputStream.idl b/udkapi/com/sun/star/io/XInputStream.idl new file mode 100644 index 000000000000..2ebbde5d61b1 --- /dev/null +++ b/udkapi/com/sun/star/io/XInputStream.idl @@ -0,0 +1,177 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XInputStream_idl__ +#define __com_sun_star_io_XInputStream_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_NotConnectedException_idl__ +#include <com/sun/star/io/NotConnectedException.idl> +#endif + +#ifndef __com_sun_star_io_BufferSizeExceededException_idl__ +#include <com/sun/star/io/BufferSizeExceededException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XInputStream +/** This is the basic interface to read data from a stream. + <p> + See the <a href="http://udk.openoffice.org/common/man/concept/streams.html"> + streaming document</a> for further information on chaining and piping streams. + */ +published interface XInputStream: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XInputStream::readBytes + /** reads the specified number of bytes in the given sequence. + + <p>The return value specifies the number of bytes which have been + put into the sequence. A difference between <var>nBytesToRead</var> + and the return value indicates that EOF has been reached. This means + that the method blocks until the specified number of bytes are + available or the EOF is reached. </p> + @param aData + after the call, the byte sequence contains the requested number + of bytes (or less as a sign of EOF). + + <p> + C++ only : Note that for unbridged (e.g., in-process) + calls, using the same sequence for repetive readBytes()-calls + can bear a performance advantage. The callee can put the data + directly into the sequence so that no buffer reallocation is + necessary. + But this holds only when + <ol> + <li> neither caller nor callee keep a second reference to the same + sequence. + <li> the sequence is pre-allocated with the requested number of bytes. + <li> the same sequence is reused ( simply preallocationg a new + sequence for every call bears no advantage ). + <li> the call is not bridged (e.g., betweeen different compilers + or different processes ). + </ol> + + If the same 'optimized' code runs against an interface in a different process, + there is an unnecessary memory allocation/deallocation (the out parameter + is of course NOT transported over the connection), but this should + be negligible compared to a synchron call. + @param nBytesToRead + the total number of bytes to read + */ + long readBytes( [out] sequence<byte> aData, + [in] long nBytesToRead ) + raises( com::sun::star::io::NotConnectedException, + com::sun::star::io::BufferSizeExceededException, + com::sun::star::io::IOException); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XInputStream::readSomeBytes + /** reads the available number of bytes, at maximum + <var>nMaxBytesToRead</var>. + + <p>This method is very similar to the readBytes method, except that + it has different blocking behaviour. + The method blocks as long as at least 1 byte is available or + EOF has been reached. EOF has only been reached, when the method + returns 0 and the corresponding byte sequence is empty. + Otherwise, after the call, aData contains the available, + but no more than nMaxBytesToRead, bytes. + @param aData contains the data read from the stream. + @param nMaxBytesToRead The maximum number of bytes to be read from this + stream during the call. + @see com::sun::star::io::XInputStream::readBytes + */ + long readSomeBytes( [out] sequence<byte> aData, + [in] long nMaxBytesToRead ) + raises( com::sun::star::io::NotConnectedException, + com::sun::star::io::BufferSizeExceededException, + com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XInputStream::skipBytes + /** skips the next <var>nBytesToSkip</var> bytes (must be positive). + + <p>It is up to the implementation whether this method is + blocking the thread or not. </p> + @param nBytesToSkip + number of bytes to skip + */ + void skipBytes( [in] long nBytesToSkip ) + raises( com::sun::star::io::NotConnectedException, + com::sun::star::io::BufferSizeExceededException, + com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XInputStream::available + /** states how many bytes can be read or skipped without blocking. + + <p>Note: This method offers no information on whether the EOF + has been reached. </p> + */ + long available() + raises( com::sun::star::io::NotConnectedException, + com::sun::star::io::IOException + ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XInputStream::closeInput + /** closes the stream. + + <p>Users must close the stream explicitly when no further + reading should be done. (There may exist ring references to + chained objects that can only be released during this call. + Thus not calling this method would result in a leak of memory or + external resources.) </p> + */ + void closeInput() + raises( com::sun::star::io::NotConnectedException, + com::sun::star::io::IOException); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XInputStreamProvider.idl b/udkapi/com/sun/star/io/XInputStreamProvider.idl new file mode 100644 index 000000000000..f45aae34fb06 --- /dev/null +++ b/udkapi/com/sun/star/io/XInputStreamProvider.idl @@ -0,0 +1,60 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XInputStreamProvider_idl__ +#define __com_sun_star_io_XInputStreamProvider_idl__ + +#ifndef __com_sun_star_io_XInputStream_idl__ +#include <com/sun/star/io/XInputStream.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +/** Interface for providing an input stream. + + <p>Every time createInputStream() is called a new input stream + is returned, always pointing to the begin of the same data. All + input streams returned by <member>createInputStream()</member> + are completely independend from each other.</p> +*/ +published interface XInputStreamProvider : com::sun::star::uno::XInterface +{ + /** Creates a new input stream, every time providing + the same data. + + @return + a new input stream + */ + com::sun::star::io::XInputStream createInputStream(); +}; + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/XMarkableStream.idl b/udkapi/com/sun/star/io/XMarkableStream.idl new file mode 100644 index 000000000000..856b01cef2bf --- /dev/null +++ b/udkapi/com/sun/star/io/XMarkableStream.idl @@ -0,0 +1,127 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XMarkableStream_idl__ +#define __com_sun_star_io_XMarkableStream_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + +#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ +#include <com/sun/star/lang/IllegalArgumentException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XMarkableStream +/** makes it possible to set and remove seekable marks to a stream. + */ +published interface XMarkableStream: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XMarkableStream::createMark + /** creates a mark of the current postion and returns an identifier to it. + */ + long createMark() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XMarkableStream::deleteMark + /** deletes the mark that you previously created with + <member>XMarkableStream::createMark</member>. + + <p>It is an error to delete a mark if other marks after this + exist. In this case, for reasons of robustness, the + implementation must delete this mark and all others after + this mark. </p> + */ + void deleteMark( [in] long Mark ) + raises( com::sun::star::io::IOException, + com::sun::star::lang::IllegalArgumentException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XMarkableStream::jumpToMark + /** jumps to a previously created mark. + */ + void jumpToMark( [in] long nMark ) + raises( com::sun::star::io::IOException, + com::sun::star::lang::IllegalArgumentException ); + + //------------------------------------------------------------------------- + + /** jumps to the furthest position of the stream. + <p> In the inputstream case, a subsequent read call returns + data, that was never read or skipped over before. In the + outputstream case, a subsequent write call will add + new data at the end of the stream without overwriting existing data. + */ + void jumpToFurthest() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from idl: method com::sun::star::io::XMarkableStream::offsetToMark + /** @returns + the offset from the current stream position to the + mark ("current position" - "mark position"). + + @param nMark + identifies the mark which is used as a base + to calculate the offset of the current position. + + @throws IllegalArgumentException + if the mark does not exist or is deleted. + + @throws IOException + if an I/O error has occurred. + */ + long offsetToMark( [in] long nMark ) + raises( com::sun::star::io::IOException, + com::sun::star::lang::IllegalArgumentException ); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XObjectInputStream.idl b/udkapi/com/sun/star/io/XObjectInputStream.idl new file mode 100644 index 000000000000..565cf5f4e9a5 --- /dev/null +++ b/udkapi/com/sun/star/io/XObjectInputStream.idl @@ -0,0 +1,72 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XObjectInputStream_idl__ +#define __com_sun_star_io_XObjectInputStream_idl__ + +#ifndef __com_sun_star_io_XDataInputStream_idl__ +#include <com/sun/star/io/XDataInputStream.idl> +#endif + +#ifndef __com_sun_star_io_XPersistObject_idl__ +#include <com/sun/star/io/XPersistObject.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +/** reads XPersistObject implementations from a stream + */ +published interface XObjectInputStream: com::sun::star::io::XDataInputStream +{ + //------------------------------------------------------------------------- + + /** reads an object from the stream. In general, it + reads the service name, instantiaties the object and + calls read on the XPersistObject interface with itself + as argument. + */ + com::sun::star::io::XPersistObject readObject() + raises( com::sun::star::io::IOException ); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XObjectOutputStream.idl b/udkapi/com/sun/star/io/XObjectOutputStream.idl new file mode 100644 index 000000000000..31d34a96bda0 --- /dev/null +++ b/udkapi/com/sun/star/io/XObjectOutputStream.idl @@ -0,0 +1,71 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XObjectOutputStream_idl__ +#define __com_sun_star_io_XObjectOutputStream_idl__ + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + +#ifndef __com_sun_star_io_XDataOutputStream_idl__ +#include <com/sun/star/io/XDataOutputStream.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + + published interface XPersistObject; + +//============================================================================= + +/** stores XPersistObject implementations into the stream + + <p>An implementation of the type <type>XPersistObject</type> + uses this interface to write its internal state into a stream. + Have a look there for the explanation of the concept. + + @see com::sun::star::io::XPersistObject + */ +published interface XObjectOutputStream: XDataOutputStream +{ + /** writes an object to the stream. + @param Object the object, which shall serialize itself into the stream. + */ + void writeObject( [in] XPersistObject Object ) + raises( IOException ); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XOutputStream.idl b/udkapi/com/sun/star/io/XOutputStream.idl new file mode 100644 index 000000000000..cc2cd61bd963 --- /dev/null +++ b/udkapi/com/sun/star/io/XOutputStream.idl @@ -0,0 +1,105 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XOutputStream_idl__ +#define __com_sun_star_io_XOutputStream_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_NotConnectedException_idl__ +#include <com/sun/star/io/NotConnectedException.idl> +#endif + +#ifndef __com_sun_star_io_BufferSizeExceededException_idl__ +#include <com/sun/star/io/BufferSizeExceededException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XOutputStream +/** This is the basic interface to write data to a stream. + <p> + See the <a href="http://udk.openoffice.org/common/man/concept/streams.html"> + streaming document</a> for further information on chaining and piping streams. + */ +published interface XOutputStream: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XOutputStream::writeBytes + /** writes the whole sequence to the stream. (blocking call) + */ + void writeBytes( [in] sequence<byte> aData ) + raises( com::sun::star::io::NotConnectedException, + com::sun::star::io::BufferSizeExceededException, + com::sun::star::io::IOException); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XOutputStream::flush + /** flushes out of the stream any data that may exist in buffers. + + <p>The semantics of this method are rather vague. See + <member scope="com::sun::star::io"> + XAsyncOutputMonitor::waitForCompletion</member> for a similar method + with very specific semantics, that is useful in certain scenarios.</p> + */ + void flush() + raises( com::sun::star::io::NotConnectedException, + com::sun::star::io::BufferSizeExceededException, + com::sun::star::io::IOException); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XOutputStream::closeOutput + /** gets called to indicate that all data has been written. + + <p>If this method has not yet been called, no attached + <type>XInputStream</type> receives an EOF signal. No further + bytes may be written after this method has been called.</p> + */ + void closeOutput() + raises( com::sun::star::io::NotConnectedException, + com::sun::star::io::BufferSizeExceededException, + com::sun::star::io::IOException); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XPersist.idl b/udkapi/com/sun/star/io/XPersist.idl new file mode 100644 index 000000000000..77f750c6599d --- /dev/null +++ b/udkapi/com/sun/star/io/XPersist.idl @@ -0,0 +1,72 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XPersist_idl__ +#define __com_sun_star_io_XPersist_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XPersist +/** makes it possible to write this object to an URL or read it from an URL. + */ +published interface XPersist: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XPersist::write + /** writes all the persistent data of the object to the URL. + */ + void write ( [in] string URL ) raises ( com::sun::star::io::IOException ) ; + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XPersist::read + /** reads all the persistent data of the object from the URL. + */ + void read ( [in] string URL ) raises ( com::sun::star::io::IOException ) ; + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XPersistObject.idl b/udkapi/com/sun/star/io/XPersistObject.idl new file mode 100644 index 000000000000..53da2b9a2e64 --- /dev/null +++ b/udkapi/com/sun/star/io/XPersistObject.idl @@ -0,0 +1,117 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XPersistObject_idl__ +#define __com_sun_star_io_XPersistObject_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + + published interface XObjectInputStream; + published interface XObjectOutputStream; + +//============================================================================= + +/** allows to make UNO objects persistent + + <p>Every UNO object, that wants to be serializable, should implement + this interface. The object stores stores itself, when the + write method is called. + <p> + The object needs to be created before it deserializes + itself again (by using the read method). Therefor it must be + createable by name via a factory, which is in general + the global service manager. The create and read mechanism + is implemented by the <type scope="com::sun::star::io">ObjectInputStream</type>. + + <p>The serialization format (the series of strings, integers, objects) must + be specified at the specification of the concrete service. + + <p>The interface does not support any special versioning mechanism. + + @see com::sun::star::io::XObjectOutputStream + @see com::sun::star::io::XObjectInputStream + */ +published interface XPersistObject: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + /** gives the service name of the object + + @returns + the service name that specifies the behavior and the + persistent data format of this implementation. + + <p>This name is used to create such an object by a factory + during deserialization. </p> + + @see com::sun::star::lang::XServiceInfo::getAvailableServiceNames + */ + string getServiceName(); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XPersistObject::write + /** writes all the persistent data of the object to the stream. + <p>The implementation + must write the data in the order documented in the service specification. + @param OutStream the stream, the data shall be written to. The stream + supports simple types and other XPersistObject implementations. + */ + void write( [in] com::sun::star::io::XObjectOutputStream OutStream ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XPersistObject::read + /** reads all the persistent data of the object from the stream. + <p>In case + other XPersistObjects are read from the stream, the implementation uses a factory + to create these objects (in general the global service manager). + <p> The implementation must read the data in the order documented at + the service specification. + @param InStream the stream, the data shall be read from. + */ + void read( [in] com::sun::star::io::XObjectInputStream InStream ) + raises( com::sun::star::io::IOException ); + +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/XSeekable.idl b/udkapi/com/sun/star/io/XSeekable.idl new file mode 100644 index 000000000000..f22dbdb875ca --- /dev/null +++ b/udkapi/com/sun/star/io/XSeekable.idl @@ -0,0 +1,93 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XSeekable_idl__ +#define __com_sun_star_io_XSeekable_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif +#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ +#include <com/sun/star/lang/IllegalArgumentException.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XSeekable +/** makes it possible to seek to a certain position within a stream. + + <p>This interface should be supported, if it is possible to access the + data at the new position quickly. + You should not support this interface, if you have a continuous + stream, for example, a video stream. + */ +published interface XSeekable: com::sun::star::uno::XInterface +{ + + // DocMerge from xml: method com::sun::star::io::XSeekable::seek + /** changes the seek pointer to a new location relative to the beginning of the stream. + + + <p> This method changes the seek pointer so subsequent reads and writes can take place at a different + location in the stream object. It is an error to seek before the beginning of the stream or after the + end of the stream. </p> + + @throws com::sun::star::lang::IllegalArgumentException in case location is negative or greater than <member>XSeekable::getLength</member>. + */ + void seek( [in] hyper location ) + raises( com::sun::star::lang::IllegalArgumentException, com::sun::star::io::IOException ); + + + // DocMerge from xml: method com::sun::star::io::XSeekable::getPosition + /** returns the current offset of the stream. + @returns + the current offset in this stream. + */ + hyper getPosition() + raises( com::sun::star::io::IOException ); + + + // DocMerge from xml: method com::sun::star::io::XSeekable::getLength + /** returns the length of the stream. + @returns + the length of the storage medium on which the stream works. + */ + hyper getLength() + raises( com::sun::star::io::IOException ); +}; + +//============================================================================= + +}; }; }; }; +#endif diff --git a/udkapi/com/sun/star/io/XSeekableInputStream.idl b/udkapi/com/sun/star/io/XSeekableInputStream.idl new file mode 100644 index 000000000000..63cbf0a6d306 --- /dev/null +++ b/udkapi/com/sun/star/io/XSeekableInputStream.idl @@ -0,0 +1,56 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XSeekableInputStream_idl__ +#define __com_sun_star_io_XSeekableInputStream_idl__ + +#ifndef __com_sun_star_io_XInputStream_idl__ +#include <com/sun/star/io/XInputStream.idl> +#endif + +#ifndef __com_sun_star_io_XSeekable_idl__ +#include <com/sun/star/io/XSeekable.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= +/** This interface can be used to represent a seekable input stream. + */ +published interface XSeekableInputStream +{ + interface XInputStream; + interface XSeekable; +}; + +//============================================================================= + +}; }; }; }; + +#endif + diff --git a/udkapi/com/sun/star/io/XSequenceOutputStream.idl b/udkapi/com/sun/star/io/XSequenceOutputStream.idl new file mode 100644 index 000000000000..43539f82c647 --- /dev/null +++ b/udkapi/com/sun/star/io/XSequenceOutputStream.idl @@ -0,0 +1,65 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XSequenceOutputStream_idl__ +#define __com_sun_star_io_XSequenceOutputStream_idl__ + +#ifndef __com_sun_star_io_XOutputStream_idl__ +#include <com/sun/star/io/XOutputStream.idl> +#endif + +#ifndef __com_sun_star_io_NotConnectedException_idl__ +#include <com/sun/star/io/NotConnectedException.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= +/** This interface offers access to the written bytes +*/ +interface XSequenceOutputStream +{ + interface XOutputStream; + + /** allows to get access to the written data + */ + sequence< byte > getWrittenBytes() + raises( com::sun::star::io::NotConnectedException, + com::sun::star::io::IOException ); +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/XStream.idl b/udkapi/com/sun/star/io/XStream.idl new file mode 100644 index 000000000000..c24dfd020e0c --- /dev/null +++ b/udkapi/com/sun/star/io/XStream.idl @@ -0,0 +1,80 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XStream_idl__ +#define __com_sun_star_io_XStream_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_XOutputStream_idl__ +#include <com/sun/star/io/XOutputStream.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XStream +/** offers read and write access to the same stream. + */ +published interface XStream: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XStream::getInputStream + /** @returns + the <type>XInputStream</type> part of the stream. Closing the returned + <type>XInputStream</type> also closes any <type>XOutputStream</type> part. + */ + XInputStream getInputStream(); + + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XStream::getOutputStream + /** @returns + the <type>XInputStream</type> part of the stream. Closing the returned + <type>XOutputStream</type> also closes the <type>XInputStream</type> part. + */ + XOutputStream getOutputStream(); +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XStreamListener.idl b/udkapi/com/sun/star/io/XStreamListener.idl new file mode 100644 index 000000000000..5fc5d0b15edc --- /dev/null +++ b/udkapi/com/sun/star/io/XStreamListener.idl @@ -0,0 +1,90 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XStreamListener_idl__ +#define __com_sun_star_io_XStreamListener_idl__ + +#ifndef __com_sun_star_lang_XEventListener_idl__ +#include <com/sun/star/lang/XEventListener.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= + +// DocMerge from xml: interface com::sun::star::io::XStreamListener +/** makes it possible to receive events from an active data control. + */ +published interface XStreamListener: com::sun::star::lang::XEventListener +{ + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XStreamListener::started + /** gets called as soon as data transfer has started. + */ + void started(); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XStreamListener::closed + /** gets called when data transfer terminates normally or when data + transfer is terminated from outside. + + <p>The termination could be done using the method + <member>XActiveDataControl::terminate()</member>.</p> + */ + void closed(); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XStreamListener::terminated + /** gets called when <member>XActiveDataControl::terminate()</member> is called. + */ + void terminated(); + + //------------------------------------------------------------------------- + + // DocMerge from xml: method com::sun::star::io::XStreamListener::error + /** gets called when an internal error in source or sink has occurred. + + <p>After the method is called, the close is called on the + connected streams.</p> + */ + void error( [in] any aException ); + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XTempFile.idl b/udkapi/com/sun/star/io/XTempFile.idl new file mode 100644 index 000000000000..94b7daaac85c --- /dev/null +++ b/udkapi/com/sun/star/io/XTempFile.idl @@ -0,0 +1,89 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XTempFile_idl__ +#define __com_sun_star_io_XTempFile_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_XStream_idl__ +#include <com/sun/star/io/XStream.idl> +#endif + +#ifndef __com_sun_star_io_XSeekable_idl__ +#include <com/sun/star/io/XSeekable.idl> +#endif + + +//======================================================================== +module com { module sun { module star { module io { + +//======================================================================== +/** This interface offers access to temp files. + */ +interface XTempFile +{ + // INTERFACES + // + // ------------------------------------------------------------------- + /** interface <type>XStream</type> offers read and write access to + the same stream. + */ + interface XStream; + + // -------------------------------------------------------------------- + /** interface <type>XSeekable</type> makes it possible to seek to a + certain position within a stream. + */ + interface XSeekable; + + // ATTRIBUTES + // + // -------------------------------------------------------------------- + /** This attribute controls whether the file will be automatically + removed on object destruction. + */ + [attribute] boolean RemoveFile; + + // -------------------------------------------------------------------- + /** This attribute specifies the URL of the temp file. + */ + [readonly,attribute] string Uri; + + // -------------------------------------------------------------------- + /** This attribute specifies the temp file name. + */ + [readonly,attribute] string ResourceName; + +}; + +//========================================================================= + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/XTextInputStream.idl b/udkapi/com/sun/star/io/XTextInputStream.idl new file mode 100644 index 000000000000..73b79218001f --- /dev/null +++ b/udkapi/com/sun/star/io/XTextInputStream.idl @@ -0,0 +1,121 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XTextInputStream_idl__ +#define __com_sun_star_io_XTextInputStream_idl__ + +#ifndef __com_sun_star_io_XInputStream_idl__ +#include <com/sun/star/io/XInputStream.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= +/** Interface to read strings from a stream. + + <p>This interfaces allows to read strings seperated by + delimiters and to read lines. The character encoding + to be used can be set by <member>setEncoding()</member>. + Default encoding is "utf8".</p> + */ +published interface XTextInputStream: com::sun::star::io::XInputStream +{ + //------------------------------------------------------------------------- + /** reads text until a line break (CR, LF, or CR/LF) or + EOF is found and returns it as string (without CR, LF). + + <p>The read characters are converted according to the + encoding defined by <member>setEncoding</member>. If + EOF is already reached before calling this method + an empty string is returned.<p> + + @see setEncoding + @see isEOF + */ + string readLine() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + /** reads text until one of the given delimiter characters + or EOF is found and returns it as string (without delimiter). + + <p><strong>Important:</strong> CR/LF is not used as default + delimiter! So if no delimiter is defined or none of the + delimiters is found, the stream will be read to EOF. The + read characters are converted according to the encoding + defined by <member>setEncoding</member>. If EOF is already + reached before calling this method an empty string is returned.</p> + + @see setEncoding + @see isEOF + */ + string readString( [in] sequence<char> Delimiters, [in] boolean bRemoveDelimiter ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + /** Returns the EOF status. + + <p>This method has to be used to detect if the end + of the stream is reached.</p> + <p><strong>Important:</strong> + This cannot be detected by asking for an empty string + because that can be a valid return value of <member> + readLine()</member> (if the line is empty) and + readString() (if a delimiter is directly followed + by the next one).</p> + + @returns + <TRUE/>, if the end of file is reached, so that + no next string can be read. <FALSE/> otherwise + */ + boolean isEOF() + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + /** sets character encoding. + + @param Encoding + sets the character encoding that should be used. + The character encoding names refer to the document + http://www.iana.org/assignments/character-sets. + Which character sets are supported depends on + the implementation. + */ + void setEncoding( [in] string Encoding ); +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/XTextOutputStream.idl b/udkapi/com/sun/star/io/XTextOutputStream.idl new file mode 100644 index 000000000000..423d18682abc --- /dev/null +++ b/udkapi/com/sun/star/io/XTextOutputStream.idl @@ -0,0 +1,86 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XTextOutputStream_idl__ +#define __com_sun_star_io_XTextOutputStream_idl__ + +#ifndef __com_sun_star_io_XOutputStream_idl__ +#include <com/sun/star/io/XOutputStream.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= +/** Interface to write strings to a stream using a special + character encoding. + + <p>This interfaces allows to write strings to a stream. + The character encoding to be used can be set by <member> + setEncoding()</member>. Default encoding is "utf8".</p> + */ +published interface XTextOutputStream: com::sun::star::io::XOutputStream +{ + //------------------------------------------------------------------------- + /** writes a string to the stream using the encoding + defined by <member>setEncoding</member>. + + <p>Line breaks or delimiters that may be neccessary + to support <member>XTextInputStream::readLine</member> + and <member>XTextInputStream::readString</member> + have to be added manually to the parameter string.</p> + + @see setEncoding + @see XTextInputStream::readLine + @see XTextInputStream::readString + */ + void writeString( [in] string aString ) + raises( com::sun::star::io::IOException ); + + //------------------------------------------------------------------------- + /** sets character encoding. + + @param Encoding + sets the character encoding that should be used. + The character encoding names refer to the document + http://www.iana.org/assignments/character-sets. + Which character sets are supported depends on + the implementation. + */ + void setEncoding( [in] string Encoding ); +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/udkapi/com/sun/star/io/XTruncate.idl b/udkapi/com/sun/star/io/XTruncate.idl new file mode 100644 index 000000000000..719922b198eb --- /dev/null +++ b/udkapi/com/sun/star/io/XTruncate.idl @@ -0,0 +1,67 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XTruncate_idl__ +#define __com_sun_star_io_XTruncate_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_io_IOException_idl__ +#include <com/sun/star/io/IOException.idl> +#endif + +//============================================================================= + +module com { module sun { module star { module io { + + +//============================================================================= + +/** makes it possible to set the size of the underlying data of a stream + to zero. + */ +published interface XTruncate: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + /** sets the size of the underlying data of the stream to zero. + */ + void truncate() + raises( IOException ); + + +}; + +//============================================================================= + +}; }; }; }; + +/*============================================================================= + +=============================================================================*/ +#endif diff --git a/udkapi/com/sun/star/io/XXMLExtractor.idl b/udkapi/com/sun/star/io/XXMLExtractor.idl new file mode 100644 index 000000000000..12ee0f23083b --- /dev/null +++ b/udkapi/com/sun/star/io/XXMLExtractor.idl @@ -0,0 +1,64 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_io_XXMLExtractor_idl__ +#define __com_sun_star_io_XXMLExtractor_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 + +//============================================================================= + +module com { module sun { module star { module io { + +//============================================================================= +/** offers the capability to extract the XML document stream from a document + storage. +*/ + +published interface XXMLExtractor : com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + /** extracts the XML stream from the document storage. + + @returns + the extracted XML stream. + */ + com::sun::star::io::XInputStream extract( [in] com::sun::star::io::XInputStream aStream ); +}; + +//============================================================================= + +}; }; }; }; + + +#endif diff --git a/udkapi/com/sun/star/io/makefile.mk b/udkapi/com/sun/star/io/makefile.mk new file mode 100644 index 000000000000..3c8b0d5ac1d2 --- /dev/null +++ b/udkapi/com/sun/star/io/makefile.mk @@ -0,0 +1,99 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# 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. +# +#************************************************************************* + +PRJ=..$/..$/..$/.. + +PRJNAME=api + +TARGET=cssio +PACKAGE=com$/sun$/star$/io + +# --- Settings ----------------------------------------------------- +.INCLUDE : $(PRJ)$/util$/makefile.pmk + +# ------------------------------------------------------------------------ + +IDLFILES=\ + FilePermission.idl\ + BufferSizeExceededException.idl\ + MarkableInputStream.idl\ + MarkableOutputStream.idl\ + DataInputStream.idl\ + DataOutputStream.idl\ + DataTransferEvent.idl\ + IOException.idl\ + NotConnectedException.idl\ + AlreadyConnectedException.idl\ + ObjectInputStream.idl\ + ObjectOutputStream.idl\ + Pipe.idl\ + Pump.idl\ + SequenceInputStream.idl\ + SequenceOutputStream.idl\ + UnexpectedEOFException.idl\ + WrongFormatException.idl\ + XActiveDataControl.idl\ + XActiveDataSink.idl\ + XActiveDataSource.idl\ + XActiveDataStreamer.idl\ + XConnectable.idl\ + XDataExporter.idl\ + XDataImporter.idl\ + XDataInputStream.idl\ + XDataOutputStream.idl\ + XDataTransferEventListener.idl\ + XInputStream.idl\ + XStream.idl\ + XMarkableStream.idl\ + XObjectInputStream.idl\ + XObjectOutputStream.idl\ + XOutputStream.idl\ + XPersist.idl\ + XPersistObject.idl\ + XStreamListener.idl\ + XSeekable.idl\ + XSeekableInputStream.idl\ + XSequenceOutputStream.idl\ + TextInputStream.idl\ + TextOutputStream.idl\ + XTextInputStream.idl\ + XTextOutputStream.idl\ + XTruncate.idl\ + XXMLExtractor.idl\ + XInputStreamProvider.idl\ + UnknownHostException.idl\ + SocketException.idl\ + NoRouteToHostException.idl\ + ConnectException.idl \ + XAsyncOutputMonitor.idl\ + XTempFile.idl\ + TempFile.idl + +# ------------------------------------------------------------------ + +.INCLUDE : target.mk +.INCLUDE : $(PRJ)$/util$/target.pmk |