1c07c6c98SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3c07c6c98SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4c07c6c98SAndrew Rist * or more contributor license agreements. See the NOTICE file 5c07c6c98SAndrew Rist * distributed with this work for additional information 6c07c6c98SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7c07c6c98SAndrew Rist * to you under the Apache License, Version 2.0 (the 8c07c6c98SAndrew Rist * "License"); you may not use this file except in compliance 9c07c6c98SAndrew Rist * with the License. You may obtain a copy of the License at 10c07c6c98SAndrew Rist * 11c07c6c98SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12c07c6c98SAndrew Rist * 13c07c6c98SAndrew Rist * Unless required by applicable law or agreed to in writing, 14c07c6c98SAndrew Rist * software distributed under the License is distributed on an 15c07c6c98SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16c07c6c98SAndrew Rist * KIND, either express or implied. See the License for the 17c07c6c98SAndrew Rist * specific language governing permissions and limitations 18c07c6c98SAndrew Rist * under the License. 19c07c6c98SAndrew Rist * 20c07c6c98SAndrew Rist *************************************************************/ 21c07c6c98SAndrew Rist 22c07c6c98SAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir package complex.tdoc; 25cdf0e10cSrcweir 26cdf0e10cSrcweir import lib.MultiMethodTest; 27cdf0e10cSrcweir import lib.Status; 28cdf0e10cSrcweir 29cdf0e10cSrcweir import com.sun.star.container.XChild; 30cdf0e10cSrcweir import com.sun.star.container.XNamed; 31cdf0e10cSrcweir import com.sun.star.uno.UnoRuntime; 32cdf0e10cSrcweir import share.LogWriter; 33cdf0e10cSrcweir 34cdf0e10cSrcweir /* 35cdf0e10cSrcweir * Testing <code>com.sun.star.container.XChild</code> 36cdf0e10cSrcweir * interface methods : 37cdf0e10cSrcweir * <ul> 38cdf0e10cSrcweir * <li><code> getParent()</code></li> 39cdf0e10cSrcweir * <li><code> setParent()</code></li> 40cdf0e10cSrcweir * </ul> 41cdf0e10cSrcweir * @see com.sun.star.container.XChild 42cdf0e10cSrcweir */ 43cdf0e10cSrcweir public class _XChild { 44cdf0e10cSrcweir 45cdf0e10cSrcweir public XChild oObj = null; 46cdf0e10cSrcweir public Object gotten = null; 47cdf0e10cSrcweir public LogWriter log = null; 48cdf0e10cSrcweir 49cdf0e10cSrcweir 50cdf0e10cSrcweir /** 51cdf0e10cSrcweir * Test calls the method and checks return value and that 52cdf0e10cSrcweir * no exceptions were thrown. Parent returned is stored.<p> 53cdf0e10cSrcweir * Has <b> OK </b> status if the method returns not null value 54cdf0e10cSrcweir * and no exceptions were thrown. <p> 55cdf0e10cSrcweir */ _getParent(boolean hasParent)56cdf0e10cSrcweir public boolean _getParent(boolean hasParent) { 57cdf0e10cSrcweir gotten = oObj.getParent(); 58cdf0e10cSrcweir if (!hasParent) 59cdf0e10cSrcweir return gotten == null; 60cdf0e10cSrcweir XNamed the_name = (XNamed) UnoRuntime.queryInterface(XNamed.class,gotten); 61cdf0e10cSrcweir if (the_name != null) 62cdf0e10cSrcweir log.println("Parent:"+the_name.getName()); 63cdf0e10cSrcweir return gotten != null; 64cdf0e10cSrcweir } 65cdf0e10cSrcweir 66cdf0e10cSrcweir /** 67cdf0e10cSrcweir * Sets existing parent and checks that 68cdf0e10cSrcweir * no exceptions were thrown. <p> 69cdf0e10cSrcweir * Has <b> OK </b> status if no exceptions were thrown. <p> 70cdf0e10cSrcweir * The following method tests are to be completed successfully before : 71cdf0e10cSrcweir * <ul> 72cdf0e10cSrcweir * <li> <code> getParent() </code> : to get the parent. </li> 73cdf0e10cSrcweir * </ul> 74cdf0e10cSrcweir */ _setParent(boolean supported)75cdf0e10cSrcweir public boolean _setParent(boolean supported) { 76cdf0e10cSrcweir // requiredMethod("getParent()") ; 77cdf0e10cSrcweir 78cdf0e10cSrcweir String parentComment = null;//String) tEnv.getObjRelation("cannotSwitchParent"); 79cdf0e10cSrcweir 80cdf0e10cSrcweir if (parentComment != null) { 81cdf0e10cSrcweir log.println(parentComment); 82cdf0e10cSrcweir return true; 83cdf0e10cSrcweir } 84cdf0e10cSrcweir 85cdf0e10cSrcweir try { 86cdf0e10cSrcweir oObj.setParent(gotten); 87cdf0e10cSrcweir } 88cdf0e10cSrcweir catch (com.sun.star.lang.NoSupportException ex) { 89*86e1cf34SPedro Giffuni log.println("Exception occurred during setParent() - " + (supported?"FAILED":"OK")); 90cdf0e10cSrcweir if (supported) { 91cdf0e10cSrcweir ex.printStackTrace((java.io.PrintWriter)log); 92cdf0e10cSrcweir return false; 93cdf0e10cSrcweir } 94cdf0e10cSrcweir } 95cdf0e10cSrcweir return true; 96cdf0e10cSrcweir } 97cdf0e10cSrcweir 98cdf0e10cSrcweir } // finish class _XChild 99cdf0e10cSrcweir 100cdf0e10cSrcweir 101