1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 
28 package ifc.ucb;
29 
30 import lib.MultiMethodTest;
31 
32 import com.sun.star.ucb.XContentProvider;
33 import com.sun.star.ucb.XParameterizedContentProvider;
34 
35 /**
36 * Testing <code>com.sun.star.ucb.XParameterizedContentProvider</code>
37 * interface methods :
38 * <ul>
39 *  <li><code> registerInstance()</code></li>
40 *  <li><code> deregisterInstance()</code></li>
41 * </ul> <p>
42 * Test is <b> NOT </b> multithread compilant. <p>
43 * @see com.sun.star.ucb.XParameterizedContentProvider
44 */
45 public class _XParameterizedContentProvider extends MultiMethodTest {
46 
47     public static XParameterizedContentProvider oObj = null;
48 
49     /**
50      * Registers an instance with some arguments. <p>
51      * Has <b>OK</b> status if the method returns non <code>null</code>
52      * provider.
53      */
54     public void _registerInstance() {
55         try {
56             XContentProvider CP = oObj.registerInstance(
57                         "\"vnd.sun.star.pkg://file\".*",
58                         "uno:pipe,name=ucb_soffice;<PIPE>;urp;UCB.Factory",
59                         true);
60             tRes.tested("registerInstance()",CP != null);
61         } catch (com.sun.star.lang.IllegalArgumentException e) {
62             log.println("Exception while checking 'registerInstance'");
63             e.printStackTrace(log);
64             tRes.tested("registerInstance()",false);
65         }
66     }
67 
68     /**
69      * Deregisters the instance registered before. <p>
70      * Has <b>OK</b> status if the method returns non <code>null</code>
71      * provider. <p>
72      *
73      * The following method tests are to be completed successfully before :
74      * <ul>
75      *  <li> <code> registerInstance() </code> : to deregister it here. </li>
76      * </ul>
77      */
78     public void _deregisterInstance() {
79         requiredMethod("registerInstance()");
80         try {
81             XContentProvider CP = oObj.deregisterInstance(
82                         "\"vnd.sun.star.pkg://file\".*",
83                         "uno:pipe,name=ucb_soffice;<PIPE>;urp;UCB.Factory");
84             tRes.tested("deregisterInstance()",CP != null);
85         } catch (com.sun.star.lang.IllegalArgumentException e) {
86             log.println("Exception while checking 'deregisterInstance'");
87             e.printStackTrace(log);
88             tRes.tested("deregisterInstance()",false);
89         }
90     }
91 
92 }
93 
94