1 /************************************************************************* 2 * 3 * The Contents of this file are made available subject to the terms of 4 * the BSD license. 5 * 6 * Copyright 2000, 2010 Oracle and/or its affiliates. 7 * All rights reserved. 8 * 9 * Redistribution and use in source and binary forms, with or without 10 * modification, are permitted provided that the following conditions 11 * are met: 12 * 1. Redistributions of source code must retain the above copyright 13 * notice, this list of conditions and the following disclaimer. 14 * 2. Redistributions in binary form must reproduce the above copyright 15 * notice, this list of conditions and the following disclaimer in the 16 * documentation and/or other materials provided with the distribution. 17 * 3. Neither the name of Sun Microsystems, Inc. nor the names of its 18 * contributors may be used to endorse or promote products derived 19 * from this software without specific prior written permission. 20 * 21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 27 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 28 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 29 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 30 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE 31 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 * 33 *************************************************************************/ 34 35 import com.sun.star.lang.Locale; 36 37 public class XPossibleHyphens_impl implements 38 com.sun.star.linguistic2.XPossibleHyphens 39 { 40 String aWord; 41 String aHyphWord; 42 short[] aOrigHyphenPos; 43 Locale aLang; 44 45 public XPossibleHyphens_impl( 46 String aWord, 47 Locale aLang, 48 String aHyphWord, 49 short[] aOrigHyphenPos) 50 { 51 this.aWord = aWord; 52 this.aLang = aLang; 53 this.aHyphWord = aHyphWord; 54 this.aOrigHyphenPos = aOrigHyphenPos; 55 56 //!! none of these cases should ever occur! 57 //!! values provided only for safety 58 if (this.aWord == null) 59 this.aWord = new String(); 60 if (this.aLang == null) 61 this.aLang = new Locale(); 62 if (this.aHyphWord == null) 63 this.aHyphWord = new String(); 64 65 // having no hyphenation positions is OK though. 66 // still for safety an empty existing array has to be provided. 67 if (this.aOrigHyphenPos == null) 68 this.aOrigHyphenPos = new short[]{}; 69 } 70 71 // XPossibleHyphens 72 public String getWord() throws com.sun.star.uno.RuntimeException 73 { 74 return aWord; 75 } 76 77 public Locale getLocale() throws com.sun.star.uno.RuntimeException 78 { 79 return aLang; 80 } 81 public String getPossibleHyphens() throws com.sun.star.uno.RuntimeException 82 { 83 return aHyphWord; 84 } 85 public short[] getHyphenationPositions() throws com.sun.star.uno.RuntimeException 86 { 87 return aOrigHyphenPos; 88 } 89 }; 90