'************************************************************************* ' ' Licensed to the Apache Software Foundation (ASF) under one ' or more contributor license agreements. See the NOTICE file ' distributed with this work for additional information ' regarding copyright ownership. The ASF licenses this file ' to you under the Apache License, Version 2.0 (the ' "License"); you may not use this file except in compliance ' with the License. You may obtain a copy of the License at ' ' http://www.apache.org/licenses/LICENSE-2.0 ' ' Unless required by applicable law or agreed to in writing, ' software distributed under the License is distributed on an ' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ' KIND, either express or implied. See the License for the ' specific language governing permissions and limitations ' under the License. ' '************************************************************************* ' Be sure that all variables are dimensioned: option explicit ' REQUIRED VARIABLES for interface/service tests: Global cFileName As String Global oFileAcc As Object Global oInputStream As Object Global oOutputStream As Object Global bInputStream As Boolean Global bOutputStream As Boolean Sub CreateObj() '************************************************************************* ' COMPONENT: ' stm.MarkableOutputStream '************************************************************************* On Error Goto ErrHndl bInputStream = false bOutputStream = false cFileName = utils.getTempFileURL("BasicMarkableIOStream.dat") oFileAcc = createUnoService("com.sun.star.ucb.SimpleFileAccess") oObj = createUnoService("com.sun.star.io.MarkableOutputStream") ResetStreams() Exit Sub ErrHndl: Test.Exception() End Sub Function getOutStream() As Object On Error Goto ErrHndl CloseStreams() oOutputStream = oFileAcc.openFileWrite(cFileName) bOutputStream = true oObj.setOutputStream(oOutputStream) getOutStream() = oOutputStream Exit Function ErrHndl: Test.Exception() getOutStream() = NULL_OBJECT End Function Function getInStream() As Object On Error Goto ErrHndl Dim oFI As Object CloseStreams() oInputStream = createUnoService("com.sun.star.io.MarkableInputStream") oFI = oFileAcc.openFileRead(cFileName) oInputStream.setInputStream(oFI) bInputStream = true getInStream() = oInputStream Exit Function ErrHndl: Test.Exception() getInStream() = NULL_OBJECT End Function Sub ResetStreams() On Error goto ErrHndl CloseStreams() oFileAcc.Kill(cFileName) oOutputStream = oFileAcc.openFileWrite(cFileName) bOutputStream = true oObj.setOutputStream(oOutputStream) Exit Sub ErrHndl: Test.Exception() resume next End Sub Sub CloseStreams() if bOutputStream then oObj.closeOutput() bOutputStream = false end if if bInputStream then oInputStream.closeInput() bInputStream = false end if End Sub Sub DisposeObj() if NOT isNULL(oObj) then oObj.closeOutput() End Sub