'************************************************************************* ' ' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ' ' Copyright 2008 by Sun Microsystems, Inc. ' ' OpenOffice.org - a multi-platform office productivity suite ' ' $RCSfile: lang_XMultiComponentFactory.xba,v $ ' ' $Revision: 1.3 $ ' ' 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 ' ' for a copy of the LGPLv3 License. ' '************************************************************************* '************************************************************************* '************************************************************************* ' This Interface/Service test depends on the following GLOBAL variables, ' which must be specified in the object creation: ' - Global cServiceName As String ie. 'com.sun.star.drawing.RectangleShape' ' - Global aContext() As Variant ' - Global aArguments() As Variant '************************************************************************* Sub RunTest() '************************************************************************* ' INTERFACE: ' com.sun.star.lang.XMultiComponentFactory '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim oInstance1 As Object Dim oInstance2 As Object Test.StartMethod("getAvailableServiceNames()") bOK = true Names = oObj.getAvailableServiceNames() Dim bFound As Boolean bFound = false for i = 0 to ubound(Names) if Names(i) = cServiceName then bFound = true next i if (NOT bFound) then Out.Log("Can't find '" & cServiceName & "' in returned array.") bOK = bOK AND bFound Test.MethodTested("getAvailableServiceNames()", bOK) Test.StartMethod("createInstanceWithContext()") bOK = true oInstance1 = oObj.createInstanceWithContext(cServiceName, aContext()) bOK = bOK AND NOT isNULL(oInstance1) Test.MethodTested("createInstanceWithContext()", bOK) Test.StartMethod("createInstanceWithArgumentsAndContext()") bOK = true oInstance2 = oObj.createInstanceWithArgumentsAndContext(cServiceName, aArguments(), aContext()) bOK = bOK AND NOT isNULL(oInstance2) Test.MethodTested("createInstanceWithArgumentsAndContext()", bOK) Exit Sub ErrHndl: Test.Exception() bOK = false resume next End Sub