Resolves: #i75731# check output stream and...

throw IOExceptioin if it is not intialized

(cherry picked from commit cf17f922f01bd75643749a7fd01a03f8167bccee)

Change-Id: I07f6def513ef54b736689bf22565645f0c313982
This commit is contained in:
Jürgen Schmidt
2013-10-21 15:55:06 +00:00
committed by Caolán McNamara
parent a888280ccb
commit ed445d95ed

View File

@@ -63,6 +63,7 @@ class OTextOutputStream : public TextOutputStreamHelper
rtl_UnicodeToTextContext mContextUnicode2Text;
Sequence<sal_Int8> implConvert( const OUString& rSource );
void checkOutputStream() throw(IOException);
public:
OTextOutputStream();
@@ -163,6 +164,7 @@ Sequence<sal_Int8> OTextOutputStream::implConvert( const OUString& rSource )
void OTextOutputStream::writeString( const OUString& aString )
throw(IOException, RuntimeException)
{
checkOutputStream();
if( !mbEncodingInitialized )
{
OUString aUtf8Str("utf8");
@@ -194,22 +196,35 @@ void OTextOutputStream::setEncoding( const OUString& Encoding )
void OTextOutputStream::writeBytes( const Sequence< sal_Int8 >& aData )
throw(NotConnectedException, BufferSizeExceededException, IOException, RuntimeException)
{
checkOutputStream();
mxStream->writeBytes( aData );
}
void OTextOutputStream::flush( )
throw(NotConnectedException, BufferSizeExceededException, IOException, RuntimeException)
{
checkOutputStream();
mxStream->flush();
}
void OTextOutputStream::closeOutput( )
throw(NotConnectedException, BufferSizeExceededException, IOException, RuntimeException)
{
checkOutputStream();
mxStream->closeOutput();
}
void OTextOutputStream::checkOutputStream()
throw(IOException)
{
if (! mxStream.is() )
throw IOException(
OUString("output stream is not initialized, you have to use setOutputStream first"),
Reference<XInterface>());
}
//===========================================================================
// XActiveDataSource