'************************************************************************* ' ' 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. ' '************************************************************************* Sub RunTest() '************************************************************************* ' INTERFACE: ' com.sun.star.ucb.XContentProviderManager '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim Provider As Object Dim Scheme As String Dim ReplaceExisting As Boolean Dim ContentProvider As Object Dim queryInfo As Variant Dim bFound As Boolean Test.StartMethod("queryContentProviders()") bOK = true queryInfo = oObj.queryContentProviders() Out.Log("queryContentProviders() returned " & ubound(queryInfo) & " elements.") for i = 0 to ubound(queryInfo) Out.Log(queryInfo(i).Scheme) next i Test.MethodTested("queryContentProviders()", bOK) Test.StartMethod("registerContentProvider()") bOK = true ReplaceExisting = true Scheme = "XContentProviderManager" Provider = createUNOService("com.sun.star.ucb.FileContentProvider") Out.Log("Registering Scheme = '" & Scheme & "'") ContentProvider = oObj.registerContentProvider(Provider, Scheme, ReplaceExisting) bOK = bOK AND hasUnoInterfaces(ContentProvider, "com.sun.star.ucb.XContentProvider") Out.Log("ContentProvider is XContentProvider - " & bOK) if bOK then bFound = false queryInfo = oObj.queryContentProviders() for i = 0 to ubound(queryInfo) bFound = bFound OR queryInfo(i).Scheme = Scheme next i if NOT bFound then Out.Log("Can't find registered ContentProvider in query!") bOK = false end if end if Test.MethodTested("registerContentProvider()", bOK) Test.StartMethod("deregisterContentProvider()") if bOK then oObj.deregisterContentProvider(ContentProvider, Scheme) bFound = false queryInfo = oObj.queryContentProviders() for i = 0 to ubound(queryInfo) bFound = bFound OR queryInfo(i).Scheme = Scheme next i if bFound then Out.Log("ContentProvider was found in query! It was not DeRegistered!") bOK = false end if else Out.Log("Can't deregister ContentProvider without registering!") end if Test.MethodTested("deregisterContentProvider()", bOK) Test.StartMethod("queryContentProvider()") bOK = true ContentProvider = oObj.queryContentProvider(queryInfo(0).Scheme) bOK = bOK AND hasUnoInterfaces(ContentProvider, "com.sun.star.ucb.XContentProvider") Test.MethodTested("queryContentProvider()", bOK) Exit Sub ErrHndl: Test.Exception() bOK = false resume next End Sub