Mercurial > hg > release > icedtea6-1.4.1
changeset 331:f9a0a601f0dc
Added back files accidentally removed. Updated ChangeLog.
line wrap: on
line diff
--- a/ChangeLog Wed Nov 07 17:18:01 2007 -0500 +++ b/ChangeLog Wed Nov 07 17:29:12 2007 -0500 @@ -3,7 +3,6 @@ * Makefile.am: Added new patch to list. * Makefile.in: Regenerate. * patches/icedtea-docs.patch: New patch to build docs. - * generated/*: Removed files that should be ignored. * .hgignore: Updated. 2007-11-07 Lillian Angel <langel@redhat.com>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/java/lang/CharacterData00.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,1110 @@ +// This file was generated AUTOMATICALLY from a template file Wed Nov 07 13:33:45 EST 2007 +/* + * Copyright 2003-2006 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Sun designates this + * particular file as subject to the "Classpath" exception as provided + * by Sun in the LICENSE file that accompanied this code. + * + * This code 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 General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package java.lang; + +/** + * The CharacterData00 class encapsulates the large tables once found in + * java.lang.Character +*/ + +class CharacterData00 extends CharacterData { + /* The character properties are currently encoded into 32 bits in the following manner: + 1 bit mirrored property + 4 bits directionality property + 9 bits signed offset used for converting case + 1 bit if 1, adding the signed offset converts the character to lowercase + 1 bit if 1, subtracting the signed offset converts the character to uppercase + 1 bit if 1, this character has a titlecase equivalent (possibly itself) + 3 bits 0 may not be part of an identifier + 1 ignorable control; may continue a Unicode identifier or Java identifier + 2 may continue a Java identifier but not a Unicode identifier (unused) + 3 may continue a Unicode identifier or Java identifier + 4 is a Java whitespace character + 5 may start or continue a Java identifier; + may continue but not start a Unicode identifier (underscores) + 6 may start or continue a Java identifier but not a Unicode identifier ($) + 7 may start or continue a Unicode identifier or Java identifier + Thus: + 5, 6, 7 may start a Java identifier + 1, 2, 3, 5, 6, 7 may continue a Java identifier + 7 may start a Unicode identifier + 1, 3, 5, 7 may continue a Unicode identifier + 1 is ignorable within an identifier + 4 is Java whitespace + 2 bits 0 this character has no numeric property + 1 adding the digit offset to the character code and then + masking with 0x1F will produce the desired numeric value + 2 this character has a "strange" numeric value + 3 a Java supradecimal digit: adding the digit offset to the + character code, then masking with 0x1F, then adding 10 + will produce the desired numeric value + 5 bits digit offset + 5 bits character type + + The encoding of character properties is subject to change at any time. + */ + + int getProperties(int ch) { + char offset = (char)ch; + int props = A[Y[X[offset>>5]|((offset>>1)&0xF)]|(offset&0x1)]; + return props; + } + + int getType(int ch) { + int props = getProperties(ch); + return (props & 0x1F); + } + + boolean isJavaIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) >= 0x00005000); + } + + boolean isJavaIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00003000) != 0); + } + + boolean isUnicodeIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00007000); + } + + boolean isUnicodeIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00001000) != 0); + } + + boolean isIdentifierIgnorable(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00001000); + } + + int toLowerCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00020000) != 0) { + if ((val & 0x07FC0000) == 0x07FC0000) { + switch(ch) { + // map the offset overflow chars + case 0x0130 : mapChar = 0x0069; break; + case 0x2126 : mapChar = 0x03C9; break; + case 0x212A : mapChar = 0x006B; break; + case 0x212B : mapChar = 0x00E5; break; + // map the titlecase chars with both a 1:M uppercase map + // and a lowercase map + case 0x1F88 : mapChar = 0x1F80; break; + case 0x1F89 : mapChar = 0x1F81; break; + case 0x1F8A : mapChar = 0x1F82; break; + case 0x1F8B : mapChar = 0x1F83; break; + case 0x1F8C : mapChar = 0x1F84; break; + case 0x1F8D : mapChar = 0x1F85; break; + case 0x1F8E : mapChar = 0x1F86; break; + case 0x1F8F : mapChar = 0x1F87; break; + case 0x1F98 : mapChar = 0x1F90; break; + case 0x1F99 : mapChar = 0x1F91; break; + case 0x1F9A : mapChar = 0x1F92; break; + case 0x1F9B : mapChar = 0x1F93; break; + case 0x1F9C : mapChar = 0x1F94; break; + case 0x1F9D : mapChar = 0x1F95; break; + case 0x1F9E : mapChar = 0x1F96; break; + case 0x1F9F : mapChar = 0x1F97; break; + case 0x1FA8 : mapChar = 0x1FA0; break; + case 0x1FA9 : mapChar = 0x1FA1; break; + case 0x1FAA : mapChar = 0x1FA2; break; + case 0x1FAB : mapChar = 0x1FA3; break; + case 0x1FAC : mapChar = 0x1FA4; break; + case 0x1FAD : mapChar = 0x1FA5; break; + case 0x1FAE : mapChar = 0x1FA6; break; + case 0x1FAF : mapChar = 0x1FA7; break; + case 0x1FBC : mapChar = 0x1FB3; break; + case 0x1FCC : mapChar = 0x1FC3; break; + case 0x1FFC : mapChar = 0x1FF3; break; + // default mapChar is already set, so no + // need to redo it here. + // default : mapChar = ch; + } + } + else { + int offset = val << 5 >> (5+18); + mapChar = ch + offset; + } + } + return mapChar; + } + + int toUpperCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00010000) != 0) { + if ((val & 0x07FC0000) == 0x07FC0000) { + switch(ch) { + // map chars with overflow offsets + case 0x00B5 : mapChar = 0x039C; break; + case 0x017F : mapChar = 0x0053; break; + case 0x1FBE : mapChar = 0x0399; break; + // map char that have both a 1:1 and 1:M map + case 0x1F80 : mapChar = 0x1F88; break; + case 0x1F81 : mapChar = 0x1F89; break; + case 0x1F82 : mapChar = 0x1F8A; break; + case 0x1F83 : mapChar = 0x1F8B; break; + case 0x1F84 : mapChar = 0x1F8C; break; + case 0x1F85 : mapChar = 0x1F8D; break; + case 0x1F86 : mapChar = 0x1F8E; break; + case 0x1F87 : mapChar = 0x1F8F; break; + case 0x1F90 : mapChar = 0x1F98; break; + case 0x1F91 : mapChar = 0x1F99; break; + case 0x1F92 : mapChar = 0x1F9A; break; + case 0x1F93 : mapChar = 0x1F9B; break; + case 0x1F94 : mapChar = 0x1F9C; break; + case 0x1F95 : mapChar = 0x1F9D; break; + case 0x1F96 : mapChar = 0x1F9E; break; + case 0x1F97 : mapChar = 0x1F9F; break; + case 0x1FA0 : mapChar = 0x1FA8; break; + case 0x1FA1 : mapChar = 0x1FA9; break; + case 0x1FA2 : mapChar = 0x1FAA; break; + case 0x1FA3 : mapChar = 0x1FAB; break; + case 0x1FA4 : mapChar = 0x1FAC; break; + case 0x1FA5 : mapChar = 0x1FAD; break; + case 0x1FA6 : mapChar = 0x1FAE; break; + case 0x1FA7 : mapChar = 0x1FAF; break; + case 0x1FB3 : mapChar = 0x1FBC; break; + case 0x1FC3 : mapChar = 0x1FCC; break; + case 0x1FF3 : mapChar = 0x1FFC; break; + // ch must have a 1:M case mapping, but we + // can't handle it here. Return ch. + // since mapChar is already set, no need + // to redo it here. + //default : mapChar = ch; + } + } + else { + int offset = val << 5 >> (5+18); + mapChar = ch - offset; + } + } + return mapChar; + } + + int toTitleCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00008000) != 0) { + // There is a titlecase equivalent. Perform further checks: + if ((val & 0x00010000) == 0) { + // The character does not have an uppercase equivalent, so it must + // already be uppercase; so add 1 to get the titlecase form. + mapChar = ch + 1; + } + else if ((val & 0x00020000) == 0) { + // The character does not have a lowercase equivalent, so it must + // already be lowercase; so subtract 1 to get the titlecase form. + mapChar = ch - 1; + } + // else { + // The character has both an uppercase equivalent and a lowercase + // equivalent, so it must itself be a titlecase form; return it. + // return ch; + //} + } + else if ((val & 0x00010000) != 0) { + // This character has no titlecase equivalent but it does have an + // uppercase equivalent, so use that (subtract the signed case offset). + mapChar = toUpperCase(ch); + } + return mapChar; + } + + int digit(int ch, int radix) { + int value = -1; + if (radix >= Character.MIN_RADIX && radix <= Character.MAX_RADIX) { + int val = getProperties(ch); + int kind = val & 0x1F; + if (kind == Character.DECIMAL_DIGIT_NUMBER) { + value = ch + ((val & 0x3E0) >> 5) & 0x1F; + } + else if ((val & 0xC00) == 0x00000C00) { + // Java supradecimal digit + value = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + } + } + return (value < radix) ? value : -1; + } + + int getNumericValue(int ch) { + int val = getProperties(ch); + int retval = -1; + + switch (val & 0xC00) { + default: // cannot occur + case (0x00000000): // not numeric + retval = -1; + break; + case (0x00000400): // simple numeric + retval = ch + ((val & 0x3E0) >> 5) & 0x1F; + break; + case (0x00000800) : // "strange" numeric + switch (ch) { + case 0x0BF1: retval = 100; break; // TAMIL NUMBER ONE HUNDRED + case 0x0BF2: retval = 1000; break; // TAMIL NUMBER ONE THOUSAND + case 0x1375: retval = 40; break; // ETHIOPIC NUMBER FORTY + case 0x1376: retval = 50; break; // ETHIOPIC NUMBER FIFTY + case 0x1377: retval = 60; break; // ETHIOPIC NUMBER SIXTY + case 0x1378: retval = 70; break; // ETHIOPIC NUMBER SEVENTY + case 0x1379: retval = 80; break; // ETHIOPIC NUMBER EIGHTY + case 0x137A: retval = 90; break; // ETHIOPIC NUMBER NINETY + case 0x137B: retval = 100; break; // ETHIOPIC NUMBER HUNDRED + case 0x137C: retval = 10000; break; // ETHIOPIC NUMBER TEN THOUSAND + case 0x215F: retval = 1; break; // FRACTION NUMERATOR ONE + case 0x216C: retval = 50; break; // ROMAN NUMERAL FIFTY + case 0x216D: retval = 100; break; // ROMAN NUMERAL ONE HUNDRED + case 0x216E: retval = 500; break; // ROMAN NUMERAL FIVE HUNDRED + case 0x216F: retval = 1000; break; // ROMAN NUMERAL ONE THOUSAND + case 0x217C: retval = 50; break; // SMALL ROMAN NUMERAL FIFTY + case 0x217D: retval = 100; break; // SMALL ROMAN NUMERAL ONE HUNDRED + case 0x217E: retval = 500; break; // SMALL ROMAN NUMERAL FIVE HUNDRED + case 0x217F: retval = 1000; break; // SMALL ROMAN NUMERAL ONE THOUSAND + case 0x2180: retval = 1000; break; // ROMAN NUMERAL ONE THOUSAND C D + case 0x2181: retval = 5000; break; // ROMAN NUMERAL FIVE THOUSAND + case 0x2182: retval = 10000; break; // ROMAN NUMERAL TEN THOUSAND + + case 0x325C: retval = 32; break; + + case 0x325D: retval = 33; break; // CIRCLED NUMBER THIRTY THREE + case 0x325E: retval = 34; break; // CIRCLED NUMBER THIRTY FOUR + case 0x325F: retval = 35; break; // CIRCLED NUMBER THIRTY FIVE + case 0x32B1: retval = 36; break; // CIRCLED NUMBER THIRTY SIX + case 0x32B2: retval = 37; break; // CIRCLED NUMBER THIRTY SEVEN + case 0x32B3: retval = 38; break; // CIRCLED NUMBER THIRTY EIGHT + case 0x32B4: retval = 39; break; // CIRCLED NUMBER THIRTY NINE + case 0x32B5: retval = 40; break; // CIRCLED NUMBER FORTY + case 0x32B6: retval = 41; break; // CIRCLED NUMBER FORTY ONE + case 0x32B7: retval = 42; break; // CIRCLED NUMBER FORTY TWO + case 0x32B8: retval = 43; break; // CIRCLED NUMBER FORTY THREE + case 0x32B9: retval = 44; break; // CIRCLED NUMBER FORTY FOUR + case 0x32BA: retval = 45; break; // CIRCLED NUMBER FORTY FIVE + case 0x32BB: retval = 46; break; // CIRCLED NUMBER FORTY SIX + case 0x32BC: retval = 47; break; // CIRCLED NUMBER FORTY SEVEN + case 0x32BD: retval = 48; break; // CIRCLED NUMBER FORTY EIGHT + case 0x32BE: retval = 49; break; // CIRCLED NUMBER FORTY NINE + case 0x32BF: retval = 50; break; // CIRCLED NUMBER FIFTY + + default: retval = -2; break; + } + break; + case (0x00000C00): // Java supradecimal + retval = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + break; + } + return retval; + } + + boolean isWhitespace(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00004000); + } + + byte getDirectionality(int ch) { + int val = getProperties(ch); + byte directionality = (byte)((val & 0x78000000) >> 27); + if (directionality == 0xF ) { + switch(ch) { + case 0x202A : + // This is the only char with LRE + directionality = Character.DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING; + break; + case 0x202B : + // This is the only char with RLE + directionality = Character.DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING; + break; + case 0x202C : + // This is the only char with PDF + directionality = Character.DIRECTIONALITY_POP_DIRECTIONAL_FORMAT; + break; + case 0x202D : + // This is the only char with LRO + directionality = Character.DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE; + break; + case 0x202E : + // This is the only char with RLO + directionality = Character.DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE; + break; + default : + directionality = Character.DIRECTIONALITY_UNDEFINED; + break; + } + } + return directionality; + } + + boolean isMirrored(int ch) { + int props = getProperties(ch); + return ((props & 0x80000000) != 0); + } + + int toUpperCaseEx(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00010000) != 0) { + if ((val & 0x07FC0000) != 0x07FC0000) { + int offset = val << 5 >> (5+18); + mapChar = ch - offset; + } + else { + switch(ch) { + // map overflow characters + case 0x00B5 : mapChar = 0x039C; break; + case 0x017F : mapChar = 0x0053; break; + case 0x1FBE : mapChar = 0x0399; break; + default : mapChar = Character.ERROR; break; + } + } + } + return mapChar; + } + + char[] toUpperCaseCharArray(int ch) { + char[] upperMap = {(char)ch}; + int location = findInCharMap(ch); + if (location != -1) { + upperMap = charMap[location][1]; + } + return upperMap; + } + + + /** + * Finds the character in the uppercase mapping table. + * + * @param ch the <code>char</code> to search + * @return the index location ch in the table or -1 if not found + * @since 1.4 + */ + int findInCharMap(int ch) { + if (charMap == null || charMap.length == 0) { + return -1; + } + int top, bottom, current; + bottom = 0; + top = charMap.length; + current = top/2; + // invariant: top > current >= bottom && ch >= CharacterData.charMap[bottom][0] + while (top - bottom > 1) { + if (ch >= charMap[current][0][0]) { + bottom = current; + } else { + top = current; + } + current = (top + bottom) / 2; + } + if (ch == charMap[current][0][0]) return current; + else return -1; + } + + static final CharacterData00 instance = new CharacterData00(); + private CharacterData00() {}; + + // The following tables and code generated using: + // java GenerateCharacter -plane 0 -template ../../tools/GenerateCharacter/CharacterData00.java.template -spec ../../tools/UnicodeData/UnicodeData.txt -specialcasing ../../tools/UnicodeData/SpecialCasing.txt -o /notnfs/langel/icedtea-ecj/generated/java/lang/CharacterData00.java -string -usecharforbyte 11 4 1 + static final char[][][] charMap; +// The X table has 2048 entries for a total of 4096 bytes. + + static final char X[] = ( + "\000\020\040\060\100\120\140\160\200\220\240\260\300\320\340\360\200\u0100"+ + "\u0110\u0120\u0130\u0140\u0150\u0160\u0170\u0170\u0180\u0190\u01A0\u01B0\u01C0"+ + "\u01D0\u01E0\u01F0\u0200\200\u0210\200\u0220\u0230\u0240\u0250\u0260\u0270"+ + "\u0280\u0290\u02A0\u02B0\u02C0\u02D0\u02E0\u02F0\u0300\u0300\u0310\u0320\u0330"+ + "\u0340\u0350\u0360\u0300\u0370\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360"+ + "\u0360\u0360\u0380\u0390\u03A0\u03B0\u03C0\u03D0\u03E0\u03F0\u0400\u0410\u0420"+ + "\u0430\u0440\u0450\u0460\u0470\u03C0\u0480\u0490\u04A0\u04B0\u04C0\u04D0\u04E0"+ + "\u04F0\u0500\u0510\u0520\u0530\u0540\u0550\u0520\u0530\u0560\u0570\u0520\u0580"+ + "\u0590\u05A0\u05B0\u05C0\u05D0\u05E0\u0360\u05F0\u0600\u0610\u0360\u0620\u0630"+ + "\u0640\u0650\u0660\u0670\u0680\u0360\u0690\u06A0\u06B0\u0360\u0360\u06C0\u06D0"+ + "\u06E0\u0690\u0690\u06F0\u0690\u0690\u0700\u0690\u0710\u0720\u0690\u0730\u0690"+ + "\u0740\u0750\u0760\u0770\u0750\u0690\u0780\u0790\u0360\u0690\u0690\u07A0\u05C0"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u07B0\u07C0\u0690\u0690\u07D0\u07E0\u07F0\u0800"+ + "\u0810\u0690\u0820\u0830\u0840\u0850\u0690\u0860\u0870\u0690\u0880\u0360\u0360"+ + "\u0890\u08A0\u08B0\u08C0\u0360\u0360\u0360\u08D0\u0360\u0360\u0360\u0360\u0360"+ + "\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360"+ + "\u0360\u0360\u0360\u0360\u0360\u0360\u08E0\u08F0\u0900\u0910\u0360\u0360\u0360"+ + "\u0360\200\200\200\200\u0920\200\200\u0930\u0940\u0950\u0960\u0970\u0980\u0990"+ + "\u09A0\u09B0\u09C0\u09D0\u09E0\u09F0\u0A00\u0A10\u0A20\u0A30\u0A40\u0A50\u0A60"+ + "\u0A70\u0A80\u0A90\u0AA0\u0AB0\u0AC0\u0AD0\u0AE0\u0AF0\u0B00\u0B10\u0B20\u0B30"+ + "\u0B40\u0B50\u0B60\u0B70\u0B80\u0B90\u0BA0\u0360\u08D0\u0BB0\u0BC0\u0BD0\u0BE0"+ + "\u0BF0\u0C00\u0C10\u08D0\u08D0\u08D0\u08D0\u08D0\u0C20\u0C30\u0C40\u0C50\u08D0"+ + "\u08D0\u0C60\u0C70\u0C80\u0360\u0360\u0C90\u0CA0\u0CB0\u0CC0\u0CD0\u0CE0\u0CF0"+ + "\u0D00\u08D0\u08D0\u08D0\u08D0\u08D0\u08D0\u08D0\u08D0\u0D10\u0D10\u0D10\u0D10"+ + "\u0D20\u0D30\u0D40\u0D50\u0D60\u0D70\u0D80\u0D90\u0DA0\u0DB0\u0DC0\u0DD0\u0DE0"+ + "\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360"+ + "\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360"+ + "\u0360\u0DF0\u08D0\u08D0\u0E00\u08D0\u08D0\u08D0\u08D0\u08D0\u08D0\u0E10\u0E20"+ + "\u0E30\u0E40\u05C0\u0690\u0E50\u0E60\u0690\u0E70\u0E80\u0E90\u0690\u0690\u0EA0"+ + "\u0870\u0360\u0EB0\u0EC0\u0ED0\u0EE0\u0EF0\u0ED0\u0F00\u0F10\u0F20\u0B60\u0B60"+ + "\u0B60\u0F30\u0B60\u0B60\u0F40\u0F50\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0F60\u08D0\u08D0\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0F70\u0360\u0360\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0F80\u08D0\u0BB0\u0360"+ + "\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360"+ + "\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360"+ + "\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360"+ + "\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360\u0360"+ + "\u0360\u0360\u0360\u0360\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0F90\u0360\u0360\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0"+ + "\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0"+ + "\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0"+ + "\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0"+ + "\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0\u0FA0"+ + "\u0FA0\u0FA0\u0FA0\u0FA0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0"+ + "\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0FB0\u0690\u0690\u0690\u0690"+ + "\u0690\u0690\u0690\u0690\u0690\u0FC0\u0690\u0FD0\u0360\u0360\u0360\u0360\u0FE0"+ + "\u0FF0\u1000\u0300\u0300\u1010\u1020\u0300\u0300\u0300\u0300\u0300\u0300\u0300"+ + "\u0300\u0300\u0300\u1030\u1040\u0300\u1050\u0300\u1060\u1070\u1080\u1090\u10A0"+ + "\u10B0\u0300\u0300\u0300\u10C0\u10D0\040\u10E0\u10F0\u1100\u1110\u1120\u1130").toCharArray(); + + // The Y table has 4416 entries for a total of 8832 bytes. + + static final char Y[] = ( + "\000\000\000\000\002\004\006\000\000\000\000\000\000\000\010\004\012\014\016"+ + "\020\022\024\026\030\032\032\032\032\032\034\036\040\042\044\044\044\044\044"+ + "\044\044\044\044\044\044\044\046\050\052\054\056\056\056\056\056\056\056\056"+ + "\056\056\056\056\060\062\064\000\000\066\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\070\072\072\074\076\100\102\104\106\110\112\114\116\120\122"+ + "\124\126\126\126\126\126\126\126\126\126\126\126\130\126\126\126\132\134\134"+ + "\134\134\134\134\134\134\134\134\134\136\134\134\134\140\142\142\142\142\142"+ + "\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142"+ + "\144\142\142\142\146\150\150\150\150\150\150\150\152\142\142\142\142\142\142"+ + "\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\142\154\150"+ + "\150\152\156\142\142\160\162\164\166\170\172\162\174\176\142\200\202\204\142"+ + "\142\142\206\210\200\142\206\212\214\150\216\142\220\142\222\224\224\226\230"+ + "\232\226\234\150\150\150\150\150\150\150\236\142\142\142\142\142\142\142\142"+ + "\142\240\232\142\242\142\142\142\142\244\142\142\142\142\142\142\142\142\142"+ + "\200\246\250\250\250\250\250\250\250\250\250\250\250\250\200\252\254\256\260"+ + "\262\200\200\264\266\200\200\270\200\200\272\200\274\276\200\200\200\200\200"+ + "\300\302\200\200\300\304\200\200\200\306\200\200\200\200\200\200\200\200\200"+ + "\200\200\200\200\200\310\310\310\310\312\314\310\310\310\316\316\320\320\320"+ + "\320\320\310\316\316\316\316\316\316\316\310\310\322\316\316\316\316\322\316"+ + "\316\316\316\316\316\316\316\324\324\324\324\324\324\324\324\324\324\324\324"+ + "\324\324\324\324\324\324\326\324\324\324\324\324\324\324\324\324\250\250\330"+ + "\324\324\324\324\324\324\324\324\324\250\250\316\250\250\332\250\334\250\250"+ + "\316\336\340\342\344\346\350\126\126\126\126\126\126\126\126\352\126\126\126"+ + "\126\354\356\360\134\134\134\134\134\134\134\134\362\134\134\134\134\364\366"+ + "\370\372\374\376\142\142\142\142\142\142\142\142\142\142\142\142\u0100\u0102"+ + "\u0104\u0106\u0108\142\250\250\u010A\u010A\u010A\u010A\u010A\u010A\u010A\u010A"+ + "\126\126\126\126\126\126\126\126\126\126\126\126\126\126\126\126\134\134\134"+ + "\134\134\134\134\134\134\134\134\134\134\134\134\134\u010C\u010C\u010C\u010C"+ + "\u010C\u010C\u010C\u010C\142\u010E\324\u0110\u0112\142\142\142\142\142\142"+ + "\142\142\142\142\142\u0114\150\150\150\150\150\150\u0116\142\142\142\142\142"+ + "\142\142\142\142\142\142\142\142\142\142\142\142\142\142\250\142\250\250\250"+ + "\142\142\142\142\142\142\142\142\250\250\250\250\250\250\250\250\250\250\250"+ + "\250\250\250\250\250\u0118\u011A\u011A\u011A\u011A\u011A\u011A\u011A\u011A"+ + "\u011A\u011A\u011A\u011A\u011A\u011A\u011A\u011A\u011A\u011A\u011C\u011E\u0120"+ + "\u0120\u0120\u0122\u0124\u0124\u0124\u0124\u0124\u0124\u0124\u0124\u0124\u0124"+ + "\u0124\u0124\u0124\u0124\u0124\u0124\u0124\u0124\u0126\u0128\u012A\250\250"+ + "\330\324\324\324\324\324\324\324\324\330\324\324\324\324\324\324\324\324\324"+ + "\324\324\330\324\u012C\u012C\u012E\u0110\250\250\250\250\250\u0130\u0130\u0130"+ + "\u0130\u0130\u0130\u0130\u0130\u0130\u0130\u0130\u0130\u0130\u0132\250\250"+ + "\u0130\u0134\u0136\250\250\250\250\250\u0138\u0138\250\250\250\250\u013A\074"+ + "\324\324\324\250\250\u013C\250\u013C\u013E\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\u0140\u0140\u0140\u0140\u0140\u0140\u0142\250\250\u0144\u0140\u0140\u0140"+ + "\u0140\u0146\324\324\324\324\324\324\u0110\250\250\250\u0148\u0148\u0148\u0148"+ + "\u0148\u014A\u014C\u0140\u014E\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0150"+ + "\324\324\324\u0152\u0154\324\324\u0156\u0158\u015A\324\324\u0140\032\032\032"+ + "\032\032\u0140\u015C\u015E\u0160\u0160\u0160\u0160\u0160\u0160\u0160\u0162"+ + "\u0146\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\u0140\u0140\u0140\324\324\324\324\324\324\324\324\324\324\324\324\324\u0110"+ + "\u013E\u0140\250\250\250\250\250\250\250\250\250\250\250\250\250\250\250\250"+ + "\250\250\250\250\250\250\250\250\u0140\u0140\u0140\324\324\324\324\324\u014E"+ + "\250\250\250\250\250\250\250\330\u0164\224\224\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\250"+ + "\u0166\u0168\u016A\324\324\324\u0164\u0168\u016A\250\u016C\324\u0110\250\224"+ + "\224\224\224\224\324\u0120\u016E\u016E\u016E\u016E\u016E\u0170\250\250\250"+ + "\250\250\250\250\330\u0168\u0172\224\224\224\u0174\u0172\u0174\u0172\224\224"+ + "\224\224\224\224\224\224\224\224\u0174\224\224\224\u0174\u0174\250\224\224"+ + "\250\u0166\u0168\u016A\324\u0110\u0176\u0178\u0176\u016A\250\250\250\250\u0176"+ + "\250\250\224\u0172\224\324\250\u016E\u016E\u016E\u016E\u016E\224\072\u017A"+ + "\u017A\u017C\u017E\250\250\330\u0164\u0172\224\224\u0174\250\u0172\u0174\u0172"+ + "\224\224\224\224\224\224\224\224\224\224\u0174\224\224\224\u0174\224\u0172"+ + "\u0174\224\250\u0110\u0168\u016A\u0110\250\330\u0110\330\324\250\250\250\250"+ + "\250\u0172\224\u0174\u0174\250\250\250\u016E\u016E\u016E\u016E\u016E\324\224"+ + "\u0174\250\250\250\250\250\330\u0164\u0172\224\224\224\224\u0172\224\u0172"+ + "\224\224\224\224\224\224\224\224\224\224\u0174\224\224\224\u0174\224\u0172"+ + "\224\224\250\u0166\u0168\u016A\324\324\330\u0164\u0176\u016A\250\u0174\250"+ + "\250\250\250\250\250\250\224\324\250\u016E\u016E\u016E\u016E\u016E\u0180\250"+ + "\250\250\250\250\250\250\224\224\224\224\u0174\224\224\224\u0174\224\u0172"+ + "\224\224\250\u0166\u016A\u016A\324\250\u0176\u0178\u0176\u016A\250\250\250"+ + "\250\u0164\250\250\224\u0172\224\250\250\u016E\u016E\u016E\u016E\u016E\u0182"+ + "\250\250\250\250\250\250\250\250\u0166\u0172\224\224\u0174\250\224\u0174\224"+ + "\224\250\u0172\u0174\u0174\224\250\u0172\u0174\250\224\u0174\250\224\224\224"+ + "\224\u0172\224\250\250\u0168\u0164\u0178\250\u0168\u0178\u0168\u016A\250\250"+ + "\250\250\u0176\250\250\250\250\250\250\250\u0184\u016E\u016E\u016E\u016E\u0186"+ + "\u0188\074\074\u018A\u018C\250\250\u0176\u0168\u0172\224\224\224\u0174\224"+ + "\u0174\224\224\224\224\224\224\224\224\224\224\224\u0174\224\224\224\224\224"+ + "\u0172\224\224\250\250\324\u0164\u0168\u0178\324\u0110\324\324\250\250\250"+ + "\330\u0110\250\250\250\250\224\250\250\u016E\u016E\u016E\u016E\u016E\250\250"+ + "\250\250\250\250\250\250\250\u0168\u0172\224\224\224\u0174\224\u0174\224\224"+ + "\224\224\224\224\224\224\224\224\224\u0174\224\224\224\224\224\u0172\224\224"+ + "\250\u0166\u018E\u0168\u0168\u0178\u0190\u0178\u0168\324\250\250\250\u0176"+ + "\u0178\250\250\250\u0174\224\224\224\224\u0174\224\224\224\224\224\224\224"+ + "\224\250\250\u0168\u016A\324\250\u0168\u0178\u0168\u016A\250\250\250\250\u0176"+ + "\250\250\250\250\250\u0168\u0172\224\224\224\224\224\224\224\224\u0174\250"+ + "\224\224\224\224\224\224\224\224\224\224\224\224\u0172\224\224\224\224\u0172"+ + "\250\224\224\224\u0174\250\u0110\250\u0176\u0168\324\u0110\u0110\u0168\u0168"+ + "\u0168\u0168\250\250\250\250\250\250\250\250\250\u0168\u0170\250\250\250\250"+ + "\250\u0172\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\u016C\224\324\324\324\u0110\250\u0180\224\224"+ + "\224\u0192\324\324\324\u0194\u0196\u0196\u0196\u0196\u0196\u0120\250\250\u0172"+ + "\u0174\u0174\u0172\u0174\u0174\u0172\250\250\250\224\224\u0172\224\224\224"+ + "\u0172\224\u0172\u0172\250\224\u0172\224\u016C\224\324\324\324\330\u0166\250"+ + "\224\224\u0174\332\324\324\324\250\u0196\u0196\u0196\u0196\u0196\250\224\250"+ + "\u0198\u019A\u0120\u0120\u0120\u0120\u0120\u0120\u0120\u019C\u019A\u019A\324"+ + "\u019A\u019A\u019A\u019E\u019E\u019E\u019E\u019E\u01A0\u01A0\u01A0\u01A0\u01A0"+ + "\u010E\u010E\u010E\u01A2\u01A2\u0168\224\224\224\224\u0172\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\224\224\224\224\u0174\250\250\330\324\324"+ + "\324\324\324\324\u0164\324\324\u0194\324\224\224\250\250\324\324\324\324\330"+ + "\324\324\324\324\324\324\324\324\324\324\324\324\324\324\324\324\324\u0110"+ + "\u019A\u019A\u019A\u019A\u01A4\u019A\u019A\u017E\u01A6\250\250\250\250\250"+ + "\250\250\250\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224"+ + "\224\u0172\224\224\u0172\u0174\u016A\324\u0164\u0110\250\324\u016A\250\250"+ + "\250\u019E\u019E\u019E\u019E\u019E\u0120\u0120\u0120\224\224\224\u0168\324"+ + "\250\250\250\372\372\372\372\372\372\372\372\372\372\372\372\372\372\372\372"+ + "\372\372\372\250\250\250\250\250\224\224\224\224\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\224\u0174\u0128\250\250\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\250\250\u0172\224\u0174\250\250\224\224\224"+ + "\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224"+ + "\224\224\224\250\250\250\224\224\224\u0174\224\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\u0174\u0174\224\224\250\224\224\224\u0174\u0174"+ + "\224\224\250\224\224\224\u0174\u0174\224\224\250\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\u0174\u0174\224\224\250\224\224\224\u0174"+ + "\u0174\224\224\250\224\224\224\u0174\224\224\224\u0174\224\224\224\224\224"+ + "\224\224\224\224\224\224\u0174\224\224\224\224\224\224\224\224\224\224\224"+ + "\u0174\224\224\224\224\224\224\224\224\224\u0174\250\250\u0128\u0120\u0120"+ + "\u0120\u01A8\u01AA\u01AA\u01AA\u01AA\u01AC\u01AE\u01A0\u01A0\u01A0\u01B0\250"+ + "\224\224\224\224\224\224\224\224\224\224\u0174\250\250\250\250\250\224\224"+ + "\224\224\224\224\u01B2\u01B4\224\224\224\u0174\250\250\250\250\u01B6\224\224"+ + "\224\224\224\224\224\224\224\224\224\224\u01B8\u01BA\250\224\224\224\224\224"+ + "\u01B2\u0120\u01BC\u01BE\250\250\250\250\250\250\250\224\224\224\224\224\224"+ + "\u0174\224\224\324\u0110\250\250\250\250\250\224\224\224\224\224\224\224\224"+ + "\224\324\u0194\u0170\250\250\250\250\224\224\224\224\224\224\224\224\224\324"+ + "\250\250\250\250\250\250\224\224\224\224\224\224\u0174\224\u0174\324\250\250"+ + "\250\250\250\250\224\224\224\224\224\224\224\224\224\224\u01C0\u016A\324\324"+ + "\324\u0168\u0168\u0168\u0168\u0164\u016A\324\324\324\324\324\u0120\u01C2\u0120"+ + "\u01C4\u016C\250\u019E\u019E\u019E\u019E\u019E\250\250\250\u01C6\u01C6\u01C6"+ + "\u01C6\u01C6\250\250\250\020\020\020\u01C8\020\u01CA\324\u01CC\u0196\u0196"+ + "\u0196\u0196\u0196\250\250\250\224\u01CE\224\224\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\250\250"+ + "\250\250\224\224\224\224\u016C\250\250\250\250\250\250\250\250\250\250\250"+ + "\224\224\224\224\224\224\224\224\224\224\224\224\224\224\u0174\250\324\u0164"+ + "\u0168\u016A\u01D0\u01D2\250\250\u0168\u0164\u0168\u0168\u016A\324\250\250"+ + "\u018C\250\020\u016E\u016E\u016E\u016E\u016E\224\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\250\224\224\u0174\250\250\250\250\250\074\074"+ + "\074\074\074\074\074\074\074\074\074\074\074\074\074\074\200\200\200\200\200"+ + "\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\310\310"+ + "\310\310\310\310\310\310\310\310\310\310\310\310\310\310\310\310\310\310\310"+ + "\310\310\310\310\310\310\200\200\200\200\200\250\250\250\250\250\250\250\250"+ + "\250\250\142\142\142\142\142\142\142\142\142\142\142\u01D4\u01D4\u01D6\250"+ + "\250\142\142\142\142\142\142\142\142\142\142\142\142\142\250\250\250\u01D8"+ + "\u01D8\u01D8\u01D8\u01DA\u01DA\u01DA\u01DA\u01D8\u01D8\u01D8\250\u01DA\u01DA"+ + "\u01DA\250\u01D8\u01D8\u01D8\u01D8\u01DA\u01DA\u01DA\u01DA\u01D8\u01D8\u01D8"+ + "\u01D8\u01DA\u01DA\u01DA\u01DA\u01D8\u01D8\u01D8\250\u01DA\u01DA\u01DA\250"+ + "\u01DC\u01DC\u01DC\u01DC\u01DE\u01DE\u01DE\u01DE\u01D8\u01D8\u01D8\u01D8\u01DA"+ + "\u01DA\u01DA\u01DA\u01E0\u01E2\u01E2\u01E4\u01E6\u01E8\u01EA\250\u01D4\u01D4"+ + "\u01D4\u01D4\u01EC\u01EC\u01EC\u01EC\u01D4\u01D4\u01D4\u01D4\u01EC\u01EC\u01EC"+ + "\u01EC\u01D4\u01D4\u01D4\u01D4\u01EC\u01EC\u01EC\u01EC\u01D8\u01D4\u01EE\u01D4"+ + "\u01DA\u01F0\u01F2\u01F4\316\u01D4\u01EE\u01D4\u01F6\u01F6\u01F2\316\u01D8"+ + "\u01D4\250\u01D4\u01DA\u01F8\u01FA\316\u01D8\u01D4\u01FC\u01D4\u01DA\u01FE"+ + "\u0200\316\250\u01D4\u01EE\u01D4\u0202\u0204\u01F2\u0206\u0208\u0208\u0208"+ + "\u020A\u0208\u020C\u020E\u0210\u0212\u0212\u0212\020\u0214\u0216\u0214\u0216"+ + "\020\020\020\020\u0218\u021A\u021A\u021C\u021E\u021E\u0220\020\u0222\u0224"+ + "\020\u0226\u0228\020\u022A\u022C\020\020\020\020\020\u022E\u0230\u0232\250"+ + "\250\250\u0234\u020E\u020E\250\250\250\u020E\u020E\u020E\u0236\250\110\110"+ + "\110\u0238\u022A\u023A\u023C\u023C\u023C\u023C\u023C\u0238\u022A\u023E\250"+ + "\250\250\250\250\250\250\250\072\072\072\072\072\072\072\072\072\250\250\250"+ + "\250\250\250\250\250\250\250\250\250\250\250\250\324\324\324\324\324\324\u0240"+ + "\u0112\u0154\u0112\u0154\324\324\u0110\250\250\250\250\250\250\250\250\250"+ + "\250\074\u0242\074\u0244\074\u0246\372\200\372\u0248\u0244\074\u0244\372\372"+ + "\074\074\074\u0242\u024A\u0242\u024C\372\u024E\372\u0244\220\224\u0250\074"+ + "\u0252\372\036\u0254\u0256\200\200\u0258\250\250\250\u025A\122\122\122\122"+ + "\122\122\u025C\u025C\u025C\u025C\u025C\u025C\u025E\u025E\u0260\u0260\u0260"+ + "\u0260\u0260\u0260\u0262\u0262\u0264\u0266\250\250\250\250\250\250\u0254\u0254"+ + "\u0268\074\074\u0254\074\074\u0268\u0258\074\u0268\074\074\074\u0268\074\074"+ + "\074\074\074\074\074\074\074\074\074\074\074\074\074\u0254\074\u0268\u0268"+ + "\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\u0254\u0254\u0254"+ + "\u0254\u0254\u0254\u026A\u026C\036\u0254\u026C\u026C\u026C\u0254\u026A\u0238"+ + "\u026A\036\u0254\u026C\u026C\u026A\u026C\036\036\036\u0254\u026A\u026C\u026C"+ + "\u026C\u026C\u0254\u0254\u026A\u026A\u026C\u026C\u026C\u026C\u026C\u026C\u026C"+ + "\u026C\036\u0254\u0254\u026C\u026C\u0254\u0254\u0254\u0254\u026A\036\036\u026C"+ + "\u026C\u026C\u026C\u0254\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C"+ + "\u026C\u026C\u026C\u026C\u026C\u026C\036\u026A\u026C\036\u0254\u0254\036\u0254"+ + "\u0254\u0254\u0254\u026C\u0254\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C"+ + "\u026C\036\u0254\u0254\u026C\u0254\u0254\u0254\u0254\u026A\u026C\u026C\u0254"+ + "\u026C\u0254\u0254\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C"+ + "\u026C\u026C\u0254\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\074\074"+ + "\074\074\u026C\u026C\074\074\074\074\074\074\074\074\074\074\u026C\074\074"+ + "\074\u026E\u0270\074\074\074\074\074\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u0272\u0268\074\074\074\074\074\074\074\074\074\074\074\u0274\074\074"+ + "\u0258\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254"+ + "\u01A2\u0276\074\074\074\074\074\074\074\074\074\074\074\074\u018C\250\250"+ + "\250\250\250\250\250\074\074\074\u018C\250\250\250\250\250\250\250\250\250"+ + "\250\250\250\074\074\074\074\074\u018C\250\250\250\250\250\250\250\250\250"+ + "\250\u0278\u0278\u0278\u0278\u0278\u0278\u0278\u0278\u0278\u0278\u027A\u027A"+ + "\u027A\u027A\u027A\u027A\u027A\u027A\u027A\u027A\u027C\u027C\u027C\u027C\u027C"+ + "\u027C\u027C\u027C\u027C\u027C\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\u019A\u019A\u027E\u027E\u027E\u027E\u027E\u027E\u027E\u027E"+ + "\u027E\u027E\u027E\u027E\u027E\u0280\u0280\u0280\u0280\u0280\u0280\u0280\u0280"+ + "\u0280\u0280\u0280\u0280\u0280\u0282\u0284\u0284\u0284\u0284\u0286\u0288\u0288"+ + "\u0288\u0288\u028A\074\074\074\074\074\074\074\074\074\074\074\u0258\074\074"+ + "\074\074\u0258\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074"+ + "\074\074\074\074\074\074\074\074\074\074\074\074\u0254\u0254\u0254\u0254\074"+ + "\074\074\074\074\074\074\074\074\074\074\074\u028C\074\074\074\074\074\074"+ + "\074\074\074\074\u0258\074\074\074\074\074\074\074\250\074\074\074\074\074"+ + "\074\074\074\074\250\250\250\250\250\250\250\074\250\250\250\250\250\250\250"+ + "\250\250\250\250\250\250\250\250\u028C\074\u018C\074\074\250\074\074\074\074"+ + "\074\074\074\074\074\074\074\074\074\074\u028C\074\074\074\074\074\074\074"+ + "\074\074\074\074\074\074\074\074\074\074\u028C\u028C\074\u018C\250\u018C\074"+ + "\074\074\u018C\u028C\074\074\074\022\022\022\022\022\022\022\u028E\u028E\u028E"+ + "\u028E\u028E\u0290\u0290\u0290\u0290\u0290\u0292\u0292\u0292\u0292\u0292\u018C"+ + "\250\074\074\074\074\074\074\074\074\074\074\074\074\u028C\074\074\074\074"+ + "\074\074\u018C\250\250\250\250\250\250\250\250\u0254\u026A\u026C\036\u0254"+ + "\u0254\u026C\036\u0254\u026C\u026C\022\022\022\250\250\u0254\u0254\u0254\u0254"+ + "\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254"+ + "\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u022A\u0294\u0294\u0294\u0294"+ + "\u0294\u0294\u0294\u0294\u0294\u0294\u0296\u026A\u026C\u026C\u026C\u026C\u026C"+ + "\u026C\u026C\u026C\u026C\u026C\u0254\u0254\u0254\u0254\036\u0254\u0254\u0254"+ + "\u026C\u026C\u026C\u0254\u026A\u0254\u0254\u026C\u026C\036\u026C\u0254\022"+ + "\022\036\u0254\u026A\u026A\u026C\u0254\u026C\u0254\u0254\u0254\u0254\u0254"+ + "\u026C\u026C\u026C\u0254\022\u0254\u0254\u0254\u0254\u0254\u0254\u026C\u026C"+ + "\u026C\u026C\u026C\u026C\u026C\u026C\u026C\036\u026C\u026C\u0254\036\036\u026A"+ + "\u026A\u026C\036\u0254\u0254\u026C\u0254\u0254\u0254\u026C\036\u0254\u0254"+ + "\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u0254\u026A\036\u0254\u0254"+ + "\u0254\u0254\u0254\u026C\u0254\u0254\u026C\u026C\u026A\036\u026A\036\u0254"+ + "\u026A\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C"+ + "\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u0254\u026C\u026C\u026C"+ + "\u026C\u026A\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C"+ + "\u026C\u026C\u026C\u026C\u026C\u026C\u026C\u026C\036\u0254\u0254\036\036\u0254"+ + "\u026C\u026C\036\u0254\u0254\u026C\036\u0254\u026A\u0254\u026A\u026C\u026C"+ + "\u026A\u0254\074\074\074\074\074\074\074\250\250\250\250\250\250\250\250\250"+ + "\074\074\074\074\074\074\074\074\074\074\074\074\074\u028C\074\074\074\074"+ + "\074\074\074\074\074\074\074\074\250\250\250\250\250\250\074\074\074\074\074"+ + "\074\074\074\074\074\074\250\250\250\250\250\250\250\250\250\250\250\250\250"+ + "\074\074\074\074\074\074\250\250\012\020\u0298\u029A\022\022\022\022\022\074"+ + "\022\022\022\022\u029C\u029E\u02A0\u02A2\u02A2\u02A2\u02A2\324\324\324\u02A4"+ + "\310\310\074\u02A6\u02A8\u02AA\074\224\224\224\224\224\224\224\224\224\224"+ + "\224\u0174\330\u02AC\u02AE\u02B0\u02B2\224\224\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224\224"+ + "\u02B4\310\u02B0\250\250\u0172\224\224\224\224\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\u0174\250\u0172\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\u0174\u019A\u02B6\u02B6\u019A\u019A\u019A\u019A"+ + "\u019A\250\250\250\250\250\250\250\250\224\224\224\224\224\224\224\224\u019A"+ + "\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u0272\u018C\u02B8\u02B8\u02B8\u02B8\u02B8\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\u019A\u019A\u019A\u019A\250\250\250\250\250\250\u02BA\u02BC"+ + "\u02BC\u02BC\u02BC\u02BC\122\122\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\u019A\u019A\u019A\u019A\074\u01A6\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\u019A\u02BE\122\122\122\122\122\122\122\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\074\074\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u017E\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u0272\074\u0274\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\074\u019A\u019A\u019A\u019A"+ + "\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u019A\u0272\224"+ + "\224\224\224\224\224\224\224\224\224\224\250\250\250\250\250\224\224\224\250"+ + "\250\250\250\250\250\250\250\250\250\250\250\250\224\224\224\224\224\224\u0174"+ + "\250\074\074\074\074\074\074\074\074\224\224\250\250\250\250\250\250\250\250"+ + "\250\250\250\250\250\250\u02C0\u02C0\u02C0\u02C0\u02C0\u02C0\u02C0\u02C0\u02C0"+ + "\u02C0\u02C0\u02C0\u02C0\u02C0\u02C0\u02C0\u02C2\u02C2\u02C2\u02C2\u02C2\u02C2"+ + "\u02C2\u02C2\u02C2\u02C2\u02C2\u02C2\u02C2\u02C2\u02C2\u02C2\224\224\224\224"+ + "\224\224\224\250\224\224\224\224\224\224\224\224\224\224\224\224\224\u0174"+ + "\250\250\250\250\250\250\250\250\250\250\u01D4\u01D4\u01D4\u01EE\250\250\250"+ + "\250\250\u02C4\u01D4\u01D4\250\250\u02C6\u02C8\u0130\u0130\u0130\u0130\u02CA"+ + "\u0130\u0130\u0130\u0130\u0130\u0130\u0132\u0130\u0130\u0132\u0132\u0130\u02C6"+ + "\u0132\u0130\u0130\u0130\u0130\u0130\u0140\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\250\250\250\250"+ + "\250\250\250\250\250\250\250\250\250\250\250\250\u013E\u0140\u0140\u0140\u0140"+ + "\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\u0140\u0140\u0140\u0140\u01A2\250\250\250\250\250\250\250\250\u0140\u0140"+ + "\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\u0140\250\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\250\250\250\250\250\250\250\250\250\250\250\250\250\250\250\250\250\250\250"+ + "\250\u0140\u0140\u0140\u0140\u0140\u0140\u02CC\250\324\324\324\324\324\324"+ + "\324\324\250\250\250\250\250\250\250\250\324\324\250\250\250\250\250\250\u02CE"+ + "\u02D0\u02D2\u02D4\u02D4\u02D4\u02D4\u02D4\u02D4\u02D4\u02D6\u02D8\u02D6\020"+ + "\u0226\u02DA\034\u02DC\u02DE\020\u029C\u02D4\u02D4\u02E0\020\u02E2\u0254\u02E4"+ + "\u02E6\u0220\250\250\u0140\u0140\u0142\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140\u0140"+ + "\u0142\u0162\u0232\014\016\020\022\024\026\030\032\032\032\032\032\034\036"+ + "\040\054\056\056\056\056\056\056\056\056\056\056\056\056\060\062\u022A\u022C"+ + "\022\u0226\224\224\224\224\224\u02B0\224\224\224\224\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\224\224\224\224\310\224\224\224\224\224\224"+ + "\224\224\224\224\224\224\224\224\224\u0174\250\224\224\224\250\224\224\224"+ + "\250\224\224\224\250\224\u0174\250\072\u02E8\u018A\u02EA\u0258\u0254\u0268"+ + "\u018C\250\250\250\250\u0162\u020E\074\250").toCharArray(); + + // The A table has 748 entries for a total of 2992 bytes. + + static final int A[] = new int[748]; + static final String A_DATA = + "\u4800\u100F\u4800\u100F\u4800\u100F\u5800\u400F\u5000\u400F\u5800\u400F\u6000"+ + "\u400F\u5000\u400F\u5000\u400F\u5000\u400F\u6000\u400C\u6800\030\u6800\030"+ + "\u2800\030\u2800\u601A\u2800\030\u6800\030\u6800\030\uE800\025\uE800\026\u6800"+ + "\030\u2800\031\u3800\030\u2800\024\u3800\030\u2000\030\u1800\u3609\u1800\u3609"+ + "\u3800\030\u6800\030\uE800\031\u6800\031\uE800\031\u6800\030\u6800\030\202"+ + "\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\uE800\025\u6800\030\uE800\026\u6800\033"+ + "\u6800\u5017\u6800\033\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\uE800\025\u6800"+ + "\031\uE800\026\u6800\031\u4800\u100F\u4800\u100F\u5000\u100F\u3800\014\u6800"+ + "\030\u2800\u601A\u2800\u601A\u6800\034\u6800\034\u6800\033\u6800\034\000\u7002"+ + "\uE800\035\u6800\031\u6800\u1010\u6800\034\u6800\033\u2800\034\u2800\031\u1800"+ + "\u060B\u1800\u060B\u6800\033\u07FD\u7002\u6800\034\u6800\030\u6800\033\u1800"+ + "\u050B\000\u7002\uE800\036\u6800\u080B\u6800\u080B\u6800\u080B\u6800\030\202"+ + "\u7001\202\u7001\202\u7001\u6800\031\202\u7001\u07FD\u7002\201\u7002\201\u7002"+ + "\201\u7002\u6800\031\201\u7002\u061D\u7002\006\u7001\005\u7002\u07FF\uF001"+ + "\u03A1\u7002\000\u7002\006\u7001\005\u7002\006\u7001\005\u7002\u07FD\u7002"+ + "\u061E\u7001\006\u7001\000\u7002\u034A\u7001\u033A\u7001\006\u7001\005\u7002"+ + "\u0336\u7001\u0336\u7001\006\u7001\005\u7002\000\u7002\u013E\u7001\u032A\u7001"+ + "\u032E\u7001\006\u7001\u033E\u7001\u067D\u7002\u034E\u7001\u0346\u7001\000"+ + "\u7002\000\u7002\u034E\u7001\u0356\u7001\u05F9\u7002\u035A\u7001\u036A\u7001"+ + "\006\u7001\005\u7002\u036A\u7001\005\u7002\u0366\u7001\u0366\u7001\006\u7001"+ + "\005\u7002\u036E\u7001\000\u7002\000\u7005\000\u7002\u0721\u7002\000\u7005"+ + "\000\u7005\012\uF001\007\uF003\011\uF002\012\uF001\007\uF003\011\uF002\011"+ + "\uF002\006\u7001\005\u7002\u013D\u7002\u07FD\u7002\012\uF001\u067E\u7001\u0722"+ + "\u7001\u05FA\u7001\000\u7002\000\u7002\u7800\000\u7800\000\u7800\000\000\u7002"+ + "\u0349\u7002\u0339\u7002\000\u7002\u0335\u7002\u0335\u7002\000\u7002\u0329"+ + "\u7002\000\u7002\u032D\u7002\u0335\u7002\000\u7002\000\u7002\u033D\u7002\u0345"+ + "\u7002\u034D\u7002\000\u7002\u034D\u7002\u0355\u7002\000\u7002\000\u7002\u0359"+ + "\u7002\u0369\u7002\000\u7002\000\u7002\u0369\u7002\u0365\u7002\u0365\u7002"+ + "\u036D\u7002\000\u7002\000\u7004\000\u7004\000\u7004\u6800\u7004\u6800\u7004"+ + "\000\u7004\u6800\033\u6800\033\u6800\u7004\u6800\u7004\000\u7004\u6800\033"+ + "\u4000\u3006\u4000\u3006\u4000\u3006\u46B1\u3006\u7800\000\u4000\u3006\000"+ + "\u7004\u7800\000\u6800\030\u7800\000\232\u7001\u6800\030\226\u7001\226\u7001"+ + "\226\u7001\u7800\000\u0102\u7001\u7800\000\376\u7001\376\u7001\u07FD\u7002"+ + "\202\u7001\u7800\000\202\u7001\231\u7002\225\u7002\225\u7002\225\u7002\u07FD"+ + "\u7002\201\u7002\175\u7002\201\u7002\u0101\u7002\375\u7002\375\u7002\u7800"+ + "\000\371\u7002\345\u7002\000\u7001\000\u7001\000\u7001\275\u7002\331\u7002"+ + "\000\u7002\u0159\u7002\u0141\u7002\u07E5\u7002\000\u7002\u0712\u7001\u0181"+ + "\u7002\u6800\031\006\u7001\005\u7002\u07E6\u7001\u0142\u7001\u0142\u7001\u0141"+ + "\u7002\u0141\u7002\000\034\u4000\u3006\u4000\u3006\u7800\000\u4000\007\u4000"+ + "\007\000\u7001\006\u7001\005\u7002\u7800\000\u7800\000\302\u7001\302\u7001"+ + "\302\u7001\302\u7001\u7800\000\u7800\000\000\u7004\000\030\000\030\u7800\000"+ + "\301\u7002\301\u7002\301\u7002\301\u7002\u07FD\u7002\u7800\000\000\030\u6800"+ + "\024\u7800\000\u0800\030\u4000\u3006\u4000\u3006\u0800\030\u0800\u7005\u0800"+ + "\u7005\u0800\u7005\u7800\000\u0800\u7005\u0800\030\u0800\030\u7800\000\u1000"+ + "\u1010\u1000\u1010\u3800\030\u1000\030\u7800\000\u1000\030\u7800\000\u1000"+ + "\u7005\u1000\u7005\u1000\u7005\u1000\u7005\u7800\000\u1000\u7004\u1000\u7005"+ + "\u1000\u7005\u4000\u3006\u3000\u3409\u3000\u3409\u2800\030\u3000\030\u3000"+ + "\030\u1000\030\u4000\u3006\u1000\u7005\u1000\030\u1000\u7005\u4000\u3006\u1000"+ + "\u1010\u4000\007\u4000\u3006\u4000\u3006\u1000\u7004\u1000\u7004\u4000\u3006"+ + "\u4000\u3006\u6800\034\u1000\u7005\u1000\034\u1000\034\u1000\u7005\u1000\030"+ + "\u1000\030\u7800\000\u4800\u1010\u4000\u3006\000\u3008\u4000\u3006\000\u7005"+ + "\000\u3008\000\u3008\000\u3008\u4000\u3006\000\u7005\u4000\u3006\000\u3749"+ + "\000\u3749\000\030\u7800\000\u7800\000\000\u7005\000\u7005\u7800\000\u7800"+ + "\000\000\u3008\000\u3008\u7800\000\000\u05AB\000\u05AB\000\013\000\u06EB\000"+ + "\034\u7800\000\u7800\000\u2800\u601A\000\034\000\u7005\u7800\000\000\u3749"+ + "\000\u074B\000\u080B\000\u080B\u6800\034\u6800\034\u2800\u601A\u6800\034\u7800"+ + "\000\000\u3008\000\u3006\000\u3006\000\u3008\000\u7004\u4000\u3006\u4000\u3006"+ + "\000\030\000\u3609\000\u3609\000\u7005\000\034\000\034\000\034\000\030\000"+ + "\034\000\u3409\000\u3409\000\u080B\000\u080B\u6800\025\u6800\026\u4000\u3006"+ + "\000\034\u7800\000\000\034\000\030\000\u3709\000\u3709\000\u3709\000\u070B"+ + "\000\u042B\000\u054B\000\u080B\000\u080B\u7800\000\000\u7005\000\030\000\030"+ + "\000\u7005\u6000\u400C\000\u7005\000\u7005\u6800\025\u6800\026\u7800\000\000"+ + "\u746A\000\u746A\000\u746A\u7800\000\000\u1010\000\u1010\000\030\000\u7004"+ + "\000\030\u2800\u601A\u6800\u060B\u6800\u060B\u6800\024\u6800\030\u6800\030"+ + "\u4000\u3006\u6000\u400C\u7800\000\000\u7005\000\u7004\u4000\u3006\u4000\u3008"+ + "\u4000\u3008\u4000\u3008\u07FD\u7002\u07FD\u7002\u07FD\u7002\355\u7002\u07E1"+ + "\u7002\u07E1\u7002\u07E2\u7001\u07E2\u7001\u07FD\u7002\u07E1\u7002\u7800\000"+ + "\u07E2\u7001\u06D9\u7002\u06D9\u7002\u06A9\u7002\u06A9\u7002\u0671\u7002\u0671"+ + "\u7002\u0601\u7002\u0601\u7002\u0641\u7002\u0641\u7002\u0609\u7002\u0609\u7002"+ + "\u07FF\uF003\u07FF\uF003\u07FD\u7002\u7800\000\u06DA\u7001\u06DA\u7001\u07FF"+ + "\uF003\u6800\033\u07FD\u7002\u6800\033\u06AA\u7001\u06AA\u7001\u0672\u7001"+ + "\u0672\u7001\u7800\000\u6800\033\u07FD\u7002\u07E5\u7002\u0642\u7001\u0642"+ + "\u7001\u07E6\u7001\u6800\033\u0602\u7001\u0602\u7001\u060A\u7001\u060A\u7001"+ + "\u6800\033\u7800\000\u6000\u400C\u6000\u400C\u6000\u400C\u6000\014\u6000\u400C"+ + "\u4800\u400C\u4800\u1010\u4800\u1010\000\u1010\u0800\u1010\u6800\024\u6800"+ + "\024\u6800\035\u6800\036\u6800\025\u6800\035\u6000\u400D\u5000\u400E\u7800"+ + "\u1010\u7800\u1010\u7800\u1010\u6000\014\u2800\030\u2800\030\u2800\030\u6800"+ + "\030\u6800\030\uE800\035\uE800\036\u6800\030\u6800\030\u6800\u5017\u6800\u5017"+ + "\u6800\030\u6800\031\uE800\025\uE800\026\u6800\030\u6800\031\u6800\030\u6800"+ + "\u5017\u7800\000\u7800\000\u6800\030\u7800\000\u6000\u400C\u1800\u060B\000"+ + "\u7002\u2800\031\u2800\031\uE800\026\000\u7002\u1800\u040B\u1800\u040B\uE800"+ + "\026\u7800\000\u4000\u3006\u4000\007\000\u7001\u6800\034\u6800\034\000\u7001"+ + "\000\u7002\000\u7001\000\u7001\000\u7002\u07FE\u7001\u6800\034\u07FE\u7001"+ + "\u07FE\u7001\u2800\034\000\u7002\000\u7005\000\u7002\u7800\000\000\u7002\u6800"+ + "\031\u6800\031\u6800\031\000\u7001\u6800\034\u6800\031\u7800\000\u6800\u080B"+ + "\102\u742A\102\u742A\102\u780A\102\u780A\101\u762A\101\u762A\101\u780A\101"+ + "\u780A\000\u780A\000\u780A\000\u780A\000\u700A\u6800\031\u6800\034\u6800\031"+ + "\uE800\031\uE800\031\uE800\031\u6800\034\uE800\025\uE800\026\u6800\034\000"+ + "\034\u6800\034\u6800\034\000\034\u6800\030\u6800\034\u1800\u042B\u1800\u042B"+ + "\u1800\u05AB\u1800\u05AB\u1800\u072B\u1800\u072B\152\034\152\034\151\034\151"+ + "\034\u1800\u06CB\u6800\u040B\u6800\u040B\u6800\u040B\u6800\u040B\u6800\u058B"+ + "\u6800\u058B\u6800\u058B\u6800\u058B\u6800\u042B\u7800\000\u6800\034\u6800"+ + "\u056B\u6800\u056B\u6800\u042B\u6800\u042B\u6800\u06EB\u6800\u06EB\uE800\026"+ + "\uE800\025\uE800\026\u6800\031\u6800\034\000\u7004\000\u7005\000\u772A\u6800"+ + "\024\u6800\025\u6800\026\u6800\026\u6800\034\000\u740A\000\u740A\000\u740A"+ + "\u6800\024\000\u7004\000\u764A\000\u776A\000\u748A\000\u7004\000\u7005\u6800"+ + "\030\u4000\u3006\u6800\033\u6800\033\000\u7004\000\u7004\000\u7005\u6800\024"+ + "\000\u7005\000\u7005\u6800\u5017\000\u05EB\000\u05EB\000\u042B\000\u042B\u6800"+ + "\034\u6800\u048B\u6800\u048B\u6800\u048B\000\034\u6800\u080B\000\023\000\023"+ + "\000\022\000\022\u7800\000\u07FD\u7002\u7800\000\u0800\u7005\u4000\u3006\u0800"+ + "\u7005\u0800\u7005\u2800\031\u1000\u601A\u6800\034\u6800\030\u6800\024\u6800"+ + "\024\u6800\u5017\u6800\u5017\u6800\025\u6800\026\u6800\025\u6800\026\u6800"+ + "\030\u6800\030\u6800\025\u6800\u5017\u6800\u5017\u3800\030\u7800\000\u6800"+ + "\030\u3800\030\u6800\026\u2800\030\u2800\031\u2800\024\u6800\031\u7800\000"+ + "\u6800\030\u2800\u601A\u6800\031\u6800\033\u2800\u601A\u7800\000"; + + // In all, the character property tables require 15920 bytes. + + static { + charMap = new char[][][] { + { {'\u00DF'}, {'\u0053', '\u0053', } }, + { {'\u0130'}, {'\u0130', } }, + { {'\u0149'}, {'\u02BC', '\u004E', } }, + { {'\u01F0'}, {'\u004A', '\u030C', } }, + { {'\u0390'}, {'\u0399', '\u0308', '\u0301', } }, + { {'\u03B0'}, {'\u03A5', '\u0308', '\u0301', } }, + { {'\u0587'}, {'\u0535', '\u0552', } }, + { {'\u1E96'}, {'\u0048', '\u0331', } }, + { {'\u1E97'}, {'\u0054', '\u0308', } }, + { {'\u1E98'}, {'\u0057', '\u030A', } }, + { {'\u1E99'}, {'\u0059', '\u030A', } }, + { {'\u1E9A'}, {'\u0041', '\u02BE', } }, + { {'\u1F50'}, {'\u03A5', '\u0313', } }, + { {'\u1F52'}, {'\u03A5', '\u0313', '\u0300', } }, + { {'\u1F54'}, {'\u03A5', '\u0313', '\u0301', } }, + { {'\u1F56'}, {'\u03A5', '\u0313', '\u0342', } }, + { {'\u1F80'}, {'\u1F08', '\u0399', } }, + { {'\u1F81'}, {'\u1F09', '\u0399', } }, + { {'\u1F82'}, {'\u1F0A', '\u0399', } }, + { {'\u1F83'}, {'\u1F0B', '\u0399', } }, + { {'\u1F84'}, {'\u1F0C', '\u0399', } }, + { {'\u1F85'}, {'\u1F0D', '\u0399', } }, + { {'\u1F86'}, {'\u1F0E', '\u0399', } }, + { {'\u1F87'}, {'\u1F0F', '\u0399', } }, + { {'\u1F88'}, {'\u1F08', '\u0399', } }, + { {'\u1F89'}, {'\u1F09', '\u0399', } }, + { {'\u1F8A'}, {'\u1F0A', '\u0399', } }, + { {'\u1F8B'}, {'\u1F0B', '\u0399', } }, + { {'\u1F8C'}, {'\u1F0C', '\u0399', } }, + { {'\u1F8D'}, {'\u1F0D', '\u0399', } }, + { {'\u1F8E'}, {'\u1F0E', '\u0399', } }, + { {'\u1F8F'}, {'\u1F0F', '\u0399', } }, + { {'\u1F90'}, {'\u1F28', '\u0399', } }, + { {'\u1F91'}, {'\u1F29', '\u0399', } }, + { {'\u1F92'}, {'\u1F2A', '\u0399', } }, + { {'\u1F93'}, {'\u1F2B', '\u0399', } }, + { {'\u1F94'}, {'\u1F2C', '\u0399', } }, + { {'\u1F95'}, {'\u1F2D', '\u0399', } }, + { {'\u1F96'}, {'\u1F2E', '\u0399', } }, + { {'\u1F97'}, {'\u1F2F', '\u0399', } }, + { {'\u1F98'}, {'\u1F28', '\u0399', } }, + { {'\u1F99'}, {'\u1F29', '\u0399', } }, + { {'\u1F9A'}, {'\u1F2A', '\u0399', } }, + { {'\u1F9B'}, {'\u1F2B', '\u0399', } }, + { {'\u1F9C'}, {'\u1F2C', '\u0399', } }, + { {'\u1F9D'}, {'\u1F2D', '\u0399', } }, + { {'\u1F9E'}, {'\u1F2E', '\u0399', } }, + { {'\u1F9F'}, {'\u1F2F', '\u0399', } }, + { {'\u1FA0'}, {'\u1F68', '\u0399', } }, + { {'\u1FA1'}, {'\u1F69', '\u0399', } }, + { {'\u1FA2'}, {'\u1F6A', '\u0399', } }, + { {'\u1FA3'}, {'\u1F6B', '\u0399', } }, + { {'\u1FA4'}, {'\u1F6C', '\u0399', } }, + { {'\u1FA5'}, {'\u1F6D', '\u0399', } }, + { {'\u1FA6'}, {'\u1F6E', '\u0399', } }, + { {'\u1FA7'}, {'\u1F6F', '\u0399', } }, + { {'\u1FA8'}, {'\u1F68', '\u0399', } }, + { {'\u1FA9'}, {'\u1F69', '\u0399', } }, + { {'\u1FAA'}, {'\u1F6A', '\u0399', } }, + { {'\u1FAB'}, {'\u1F6B', '\u0399', } }, + { {'\u1FAC'}, {'\u1F6C', '\u0399', } }, + { {'\u1FAD'}, {'\u1F6D', '\u0399', } }, + { {'\u1FAE'}, {'\u1F6E', '\u0399', } }, + { {'\u1FAF'}, {'\u1F6F', '\u0399', } }, + { {'\u1FB2'}, {'\u1FBA', '\u0399', } }, + { {'\u1FB3'}, {'\u0391', '\u0399', } }, + { {'\u1FB4'}, {'\u0386', '\u0399', } }, + { {'\u1FB6'}, {'\u0391', '\u0342', } }, + { {'\u1FB7'}, {'\u0391', '\u0342', '\u0399', } }, + { {'\u1FBC'}, {'\u0391', '\u0399', } }, + { {'\u1FC2'}, {'\u1FCA', '\u0399', } }, + { {'\u1FC3'}, {'\u0397', '\u0399', } }, + { {'\u1FC4'}, {'\u0389', '\u0399', } }, + { {'\u1FC6'}, {'\u0397', '\u0342', } }, + { {'\u1FC7'}, {'\u0397', '\u0342', '\u0399', } }, + { {'\u1FCC'}, {'\u0397', '\u0399', } }, + { {'\u1FD2'}, {'\u0399', '\u0308', '\u0300', } }, + { {'\u1FD3'}, {'\u0399', '\u0308', '\u0301', } }, + { {'\u1FD6'}, {'\u0399', '\u0342', } }, + { {'\u1FD7'}, {'\u0399', '\u0308', '\u0342', } }, + { {'\u1FE2'}, {'\u03A5', '\u0308', '\u0300', } }, + { {'\u1FE3'}, {'\u03A5', '\u0308', '\u0301', } }, + { {'\u1FE4'}, {'\u03A1', '\u0313', } }, + { {'\u1FE6'}, {'\u03A5', '\u0342', } }, + { {'\u1FE7'}, {'\u03A5', '\u0308', '\u0342', } }, + { {'\u1FF2'}, {'\u1FFA', '\u0399', } }, + { {'\u1FF3'}, {'\u03A9', '\u0399', } }, + { {'\u1FF4'}, {'\u038F', '\u0399', } }, + { {'\u1FF6'}, {'\u03A9', '\u0342', } }, + { {'\u1FF7'}, {'\u03A9', '\u0342', '\u0399', } }, + { {'\u1FFC'}, {'\u03A9', '\u0399', } }, + { {'\uFB00'}, {'\u0046', '\u0046', } }, + { {'\uFB01'}, {'\u0046', '\u0049', } }, + { {'\uFB02'}, {'\u0046', '\u004C', } }, + { {'\uFB03'}, {'\u0046', '\u0046', '\u0049', } }, + { {'\uFB04'}, {'\u0046', '\u0046', '\u004C', } }, + { {'\uFB05'}, {'\u0053', '\u0054', } }, + { {'\uFB06'}, {'\u0053', '\u0054', } }, + { {'\uFB13'}, {'\u0544', '\u0546', } }, + { {'\uFB14'}, {'\u0544', '\u0535', } }, + { {'\uFB15'}, {'\u0544', '\u053B', } }, + { {'\uFB16'}, {'\u054E', '\u0546', } }, + { {'\uFB17'}, {'\u0544', '\u053D', } }, + }; + { // THIS CODE WAS AUTOMATICALLY CREATED BY GenerateCharacter: + char[] data = A_DATA.toCharArray(); + assert (data.length == (748 * 2)); + int i = 0, j = 0; + while (i < (748 * 2)) { + int entry = data[i++] << 16; + A[j++] = entry | data[i++]; + } + } + + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/java/lang/CharacterData01.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,453 @@ +// This file was generated AUTOMATICALLY from a template file Wed Nov 07 13:33:46 EST 2007 +/* + * Copyright 2003-2006 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Sun designates this + * particular file as subject to the "Classpath" exception as provided + * by Sun in the LICENSE file that accompanied this code. + * + * This code 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 General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package java.lang; + +/** The CharacterData class encapsulates the large tables once found in + * java.lang.Character. + */ + +class CharacterData01 extends CharacterData { + /* The character properties are currently encoded into 32 bits in the following manner: + 1 bit mirrored property + 4 bits directionality property + 9 bits signed offset used for converting case + 1 bit if 1, adding the signed offset converts the character to lowercase + 1 bit if 1, subtracting the signed offset converts the character to uppercase + 1 bit if 1, this character has a titlecase equivalent (possibly itself) + 3 bits 0 may not be part of an identifier + 1 ignorable control; may continue a Unicode identifier or Java identifier + 2 may continue a Java identifier but not a Unicode identifier (unused) + 3 may continue a Unicode identifier or Java identifier + 4 is a Java whitespace character + 5 may start or continue a Java identifier; + may continue but not start a Unicode identifier (underscores) + 6 may start or continue a Java identifier but not a Unicode identifier ($) + 7 may start or continue a Unicode identifier or Java identifier + Thus: + 5, 6, 7 may start a Java identifier + 1, 2, 3, 5, 6, 7 may continue a Java identifier + 7 may start a Unicode identifier + 1, 3, 5, 7 may continue a Unicode identifier + 1 is ignorable within an identifier + 4 is Java whitespace + 2 bits 0 this character has no numeric property + 1 adding the digit offset to the character code and then + masking with 0x1F will produce the desired numeric value + 2 this character has a "strange" numeric value + 3 a Java supradecimal digit: adding the digit offset to the + character code, then masking with 0x1F, then adding 10 + will produce the desired numeric value + 5 bits digit offset + 5 bits character type + + The encoding of character properties is subject to change at any time. + */ + + int getProperties(int ch) { + char offset = (char)ch; + int props = A[Y[(X[offset>>5]<<4)|((offset>>1)&0xF)]|(offset&0x1)]; + return props; + } + + int getType(int ch) { + int props = getProperties(ch); + return (props & 0x1F); + } + + boolean isJavaIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) >= 0x00005000); + } + + boolean isJavaIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00003000) != 0); + } + + boolean isUnicodeIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00007000); + } + + boolean isUnicodeIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00001000) != 0); + } + + boolean isIdentifierIgnorable(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00001000); + } + + int toLowerCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00020000) != 0) { + int offset = val << 5 >> (5+18); + mapChar = ch + offset; + } + return mapChar; + } + + int toUpperCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00010000) != 0) { + int offset = val << 5 >> (5+18); + mapChar = ch - offset; + } + return mapChar; + } + + int toTitleCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00008000) != 0) { + // There is a titlecase equivalent. Perform further checks: + if ((val & 0x00010000) == 0) { + // The character does not have an uppercase equivalent, so it must + // already be uppercase; so add 1 to get the titlecase form. + mapChar = ch + 1; + } + else if ((val & 0x00020000) == 0) { + // The character does not have a lowercase equivalent, so it must + // already be lowercase; so subtract 1 to get the titlecase form. + mapChar = ch - 1; + } + // else { + // The character has both an uppercase equivalent and a lowercase + // equivalent, so it must itself be a titlecase form; return it. + // return ch; + //} + } + else if ((val & 0x00010000) != 0) { + // This character has no titlecase equivalent but it does have an + // uppercase equivalent, so use that (subtract the signed case offset). + mapChar = toUpperCase(ch); + } + return mapChar; + } + + int digit(int ch, int radix) { + int value = -1; + if (radix >= Character.MIN_RADIX && radix <= Character.MAX_RADIX) { + int val = getProperties(ch); + int kind = val & 0x1F; + if (kind == Character.DECIMAL_DIGIT_NUMBER) { + value = ch + ((val & 0x3E0) >> 5) & 0x1F; + } + else if ((val & 0xC00) == 0x00000C00) { + // Java supradecimal digit + value = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + } + } + return (value < radix) ? value : -1; + } + + int getNumericValue(int ch) { + int val = getProperties(ch); + int retval = -1; + + switch (val & 0xC00) { + default: // cannot occur + case (0x00000000): // not numeric + retval = -1; + break; + case (0x00000400): // simple numeric + retval = ch + ((val & 0x3E0) >> 5) & 0x1F; + break; + case (0x00000800) : // "strange" numeric + switch(ch) { + case 0x10113: retval = 40; break; // AEGEAN NUMBER FORTY + case 0x10114: retval = 50; break; // AEGEAN NUMBER FIFTY + case 0x10115: retval = 60; break; // AEGEAN NUMBER SIXTY + case 0x10116: retval = 70; break; // AEGEAN NUMBER SEVENTY + case 0x10117: retval = 80; break; // AEGEAN NUMBER EIGHTY + case 0x10118: retval = 90; break; // AEGEAN NUMBER NINETY + case 0x10119: retval = 100; break; // AEGEAN NUMBER ONE HUNDRED + case 0x1011A: retval = 200; break; // AEGEAN NUMBER TWO HUNDRED + case 0x1011B: retval = 300; break; // AEGEAN NUMBER THREE HUNDRED + case 0x1011C: retval = 400; break; // AEGEAN NUMBER FOUR HUNDRED + case 0x1011D: retval = 500; break; // AEGEAN NUMBER FIVE HUNDRED + case 0x1011E: retval = 600; break; // AEGEAN NUMBER SIX HUNDRED + case 0x1011F: retval = 700; break; // AEGEAN NUMBER SEVEN HUNDRED + case 0x10120: retval = 800; break; // AEGEAN NUMBER EIGHT HUNDRED + case 0x10121: retval = 900; break; // AEGEAN NUMBER NINE HUNDRED + case 0x10122: retval = 1000; break; // AEGEAN NUMBER ONE THOUSAND + case 0x10123: retval = 2000; break; // AEGEAN NUMBER TWO THOUSAND + case 0x10124: retval = 3000; break; // AEGEAN NUMBER THREE THOUSAND + case 0x10125: retval = 4000; break; // AEGEAN NUMBER FOUR THOUSAND + case 0x10126: retval = 5000; break; // AEGEAN NUMBER FIVE THOUSAND + case 0x10127: retval = 6000; break; // AEGEAN NUMBER SIX THOUSAND + case 0x10128: retval = 7000; break; // AEGEAN NUMBER SEVEN THOUSAND + case 0x10129: retval = 8000; break; // AEGEAN NUMBER EIGHT THOUSAND + case 0x1012A: retval = 9000; break; // AEGEAN NUMBER NINE THOUSAND + case 0x1012B: retval = 10000; break; // AEGEAN NUMBER TEN THOUSAND + case 0x1012C: retval = 20000; break; // AEGEAN NUMBER TWENTY THOUSAND + case 0x1012D: retval = 30000; break; // AEGEAN NUMBER THIRTY THOUSAND + case 0x1012E: retval = 40000; break; // AEGEAN NUMBER FORTY THOUSAND + case 0x1012F: retval = 50000; break; // AEGEAN NUMBER FIFTY THOUSAND + case 0x10130: retval = 60000; break; // AEGEAN NUMBER SIXTY THOUSAND + case 0x10131: retval = 70000; break; // AEGEAN NUMBER SEVENTY THOUSAND + case 0x10132: retval = 80000; break; // AEGEAN NUMBER EIGHTY THOUSAND + case 0x10133: retval = 90000; break; // AEGEAN NUMBER NINETY THOUSAND + case 0x10323: retval = 50; break; // OLD ITALIC NUMERAL FIFTY + default: retval = -2; break; + } + + break; + case (0x00000C00): // Java supradecimal + retval = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + break; + } + return retval; + } + + boolean isWhitespace(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00004000); + } + + byte getDirectionality(int ch) { + int val = getProperties(ch); + byte directionality = (byte)((val & 0x78000000) >> 27); + if (directionality == 0xF ) { + directionality = Character.DIRECTIONALITY_UNDEFINED; + } + return directionality; + } + + boolean isMirrored(int ch) { + int props = getProperties(ch); + return ((props & 0x80000000) != 0); + } + + static final CharacterData instance = new CharacterData01(); + private CharacterData01() {}; + + // The following tables and code generated using: + // java GenerateCharacter -plane 1 -template ../../tools/GenerateCharacter/CharacterData01.java.template -spec ../../tools/UnicodeData/UnicodeData.txt -specialcasing ../../tools/UnicodeData/SpecialCasing.txt -o /notnfs/langel/icedtea-ecj/generated/java/lang/CharacterData01.java -string -usecharforbyte 11 4 1 + // The X table has 2048 entries for a total of 4096 bytes. + + static final char X[] = ( + "\000\001\002\003\004\004\004\005\006\007\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\010\011\012\003\013\003\003\003\014\015\016\004\017\020"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\021\022\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\023\023\023\023\023\023\023\024"+ + "\023\025\023\026\027\030\031\003\003\003\003\003\003\003\003\003\032\032\033"+ + "\003\003\003\003\003\034\035\036\037\040\041\042\043\044\045\046\047\050\034"+ + "\035\051\037\052\053\054\043\055\056\057\060\061\062\063\064\065\066\067\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003"+ + "\003\003\003\003\003\003\003\003\003\003\003\003\003\003\003").toCharArray(); + + // The Y table has 896 entries for a total of 1792 bytes. + + static final char Y[] = ( + "\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\004\000\000\000\000\000\000\000\000\000\004\000\002\000\000\000\000\000\000"+ + "\000\006\000\000\000\000\000\000\000\006\006\006\006\006\006\006\006\006\006"+ + "\006\006\006\006\006\006\006\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\006"+ + "\006\010\012\006\014\016\016\016\016\020\022\024\024\024\024\024\024\024\024"+ + "\024\024\024\024\024\024\024\024\006\026\030\030\030\030\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\004\032\034\006\006\006\006\006\006"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\036\006\006\006\006\006"+ + "\006\006\006\006\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\040\042\042\042\042\042\042\042\042\042\042\042\042\042\042\042\042\042"+ + "\042\042\042\044\044\044\044\044\044\044\044\044\044\044\044\044\044\044\044"+ + "\044\044\044\044\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\006\046\046\046\046\046\006\006\006\006\006"+ + "\006\006\006\006\006\006\050\050\050\006\052\050\050\050\050\050\050\050\050"+ + "\050\050\050\050\050\050\050\050\050\050\050\050\050\050\054\052\006\052\054"+ + "\030\030\030\030\030\030\030\030\030\030\030\030\030\030\030\030\030\030\030"+ + "\030\030\030\030\030\030\030\030\006\006\006\006\006\030\030\030\012\006\030"+ + "\030\030\030\030\030\030\030\030\030\030\030\030\056\060\062\030\056\064\064"+ + "\066\070\070\070\072\062\062\062\074\076\062\062\062\030\030\030\030\030\030"+ + "\030\030\030\030\030\030\030\030\030\062\062\030\030\030\030\030\030\030\030"+ + "\030\030\030\030\030\030\030\030\030\030\030\030\030\030\030\030\006\100\100"+ + "\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100\100"+ + "\100\100\100\100\100\100\102\006\006\006\006\104\104\104\104\104\104\104\104"+ + "\104\104\104\104\104\106\106\106\106\106\106\106\106\106\106\106\106\106\104"+ + "\104\104\104\104\104\104\104\104\104\104\104\104\106\106\106\110\106\106\106"+ + "\106\106\106\106\106\106\104\104\104\104\104\104\104\104\104\104\104\104\104"+ + "\106\106\106\106\106\106\106\106\106\106\106\106\106\112\104\006\112\114\112"+ + "\114\104\112\104\104\104\104\106\106\116\116\106\106\106\116\106\106\106\106"+ + "\106\104\104\104\104\104\104\104\104\104\104\104\104\104\106\106\106\106\106"+ + "\106\106\106\106\106\106\106\106\104\114\104\112\114\104\104\104\112\104\104"+ + "\104\112\106\106\106\106\106\106\106\106\106\106\106\106\106\104\114\104\112"+ + "\104\104\112\112\006\104\104\104\112\106\106\106\106\106\106\106\106\106\106"+ + "\106\106\106\104\104\104\104\104\104\104\104\104\104\104\104\104\106\106\106"+ + "\106\106\106\106\106\106\106\106\106\106\104\104\104\104\104\104\104\106\106"+ + "\106\106\106\106\106\106\106\104\106\106\106\106\106\106\106\106\106\106\106"+ + "\106\106\104\104\104\104\104\104\104\104\104\104\104\104\104\106\106\106\106"+ + "\106\106\106\106\106\106\106\106\106\104\104\104\104\104\104\104\104\106\106"+ + "\006\006\104\104\104\104\104\104\104\104\104\104\104\104\120\106\106\106\106"+ + "\106\106\106\106\106\106\106\106\122\106\106\106\104\104\104\104\104\104\104"+ + "\104\104\104\104\104\120\106\106\106\106\106\106\106\106\106\106\106\106\122"+ + "\106\106\106\104\104\104\104\104\104\104\104\104\104\104\104\120\106\106\106"+ + "\106\106\106\106\106\106\106\106\106\122\106\106\106\104\104\104\104\104\104"+ + "\104\104\104\104\104\104\120\106\106\106\106\106\106\106\106\106\106\106\106"+ + "\122\106\106\106\104\104\104\104\104\104\104\104\104\104\104\104\120\106\106"+ + "\106\106\106\106\106\106\106\106\106\106\122\106\106\106\006\006\124\124\124"+ + "\124\124\126\126\126\126\126\130\130\130\130\130\132\132\132\132\132\134\134"+ + "\134\134\134").toCharArray(); + + // The A table has 94 entries for a total of 376 bytes. + + static final int A[] = new int[94]; + static final String A_DATA = + "\000\u7005\000\u7005\u7800\000\000\u7005\000\u7005\u7800\000\u7800\000\u7800"+ + "\000\000\030\u6800\030\000\034\u7800\000\u7800\000\000\u074B\000\u074B\000"+ + "\u074B\000\u074B\000\u046B\000\u058B\000\u080B\000\u080B\000\u080B\u7800\000"+ + "\000\034\000\034\000\034\000\u042B\000\u048B\000\u050B\000\u080B\000\u700A"+ + "\u7800\000\u7800\000\000\030\242\u7001\242\u7001\241\u7002\241\u7002\000\u3409"+ + "\000\u3409\u0800\u7005\u0800\u7005\u0800\u7005\u7800\000\u7800\000\u0800\u7005"+ + "\000\034\000\u3008\000\u3008\u4000\u3006\u4000\u3006\u4000\u3006\000\u3008"+ + "\000\u3008\000\u3008\u4800\u1010\u4800\u1010\u4800\u1010\u4800\u1010\u4000"+ + "\u3006\u4000\u3006\000\034\000\034\u4000\u3006\u6800\034\u6800\034\u6800\034"+ + "\u7800\000\000\u7001\000\u7001\000\u7002\000\u7002\000\u7002\u7800\000\000"+ + "\u7001\u7800\000\u7800\000\000\u7001\u7800\000\000\u7002\000\u7001\000\031"+ + "\000\u7002\000\031\u1800\u3649\u1800\u3649\u1800\u3509\u1800\u3509\u1800\u37C9"+ + "\u1800\u37C9\u1800\u3689\u1800\u3689\u1800\u3549\u1800\u3549"; + + // In all, the character property tables require 6264 bytes. + + static { + { // THIS CODE WAS AUTOMATICALLY CREATED BY GenerateCharacter: + char[] data = A_DATA.toCharArray(); + assert (data.length == (94 * 2)); + int i = 0, j = 0; + while (i < (94 * 2)) { + int entry = data[i++] << 16; + A[j++] = entry | data[i++]; + } + } + + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/java/lang/CharacterData02.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,357 @@ +// This file was generated AUTOMATICALLY from a template file Wed Nov 07 13:33:46 EST 2007 +/* + * Copyright 2003-2006 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Sun designates this + * particular file as subject to the "Classpath" exception as provided + * by Sun in the LICENSE file that accompanied this code. + * + * This code 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 General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package java.lang; + +/** The CharacterData class encapsulates the large tables found in + Java.lang.Character. */ + +class CharacterData02 extends CharacterData { + /* The character properties are currently encoded into 32 bits in the following manner: + 1 bit mirrored property + 4 bits directionality property + 9 bits signed offset used for converting case + 1 bit if 1, adding the signed offset converts the character to lowercase + 1 bit if 1, subtracting the signed offset converts the character to uppercase + 1 bit if 1, this character has a titlecase equivalent (possibly itself) + 3 bits 0 may not be part of an identifier + 1 ignorable control; may continue a Unicode identifier or Java identifier + 2 may continue a Java identifier but not a Unicode identifier (unused) + 3 may continue a Unicode identifier or Java identifier + 4 is a Java whitespace character + 5 may start or continue a Java identifier; + may continue but not start a Unicode identifier (underscores) + 6 may start or continue a Java identifier but not a Unicode identifier ($) + 7 may start or continue a Unicode identifier or Java identifier + Thus: + 5, 6, 7 may start a Java identifier + 1, 2, 3, 5, 6, 7 may continue a Java identifier + 7 may start a Unicode identifier + 1, 3, 5, 7 may continue a Unicode identifier + 1 is ignorable within an identifier + 4 is Java whitespace + 2 bits 0 this character has no numeric property + 1 adding the digit offset to the character code and then + masking with 0x1F will produce the desired numeric value + 2 this character has a "strange" numeric value + 3 a Java supradecimal digit: adding the digit offset to the + character code, then masking with 0x1F, then adding 10 + will produce the desired numeric value + 5 bits digit offset + 5 bits character type + + The encoding of character properties is subject to change at any time. + */ + + int getProperties(int ch) { + char offset = (char)ch; + int props = A[Y[X[offset>>5]|((offset>>1)&0xF)]|(offset&0x1)]; + return props; + } + + int getType(int ch) { + int props = getProperties(ch); + return (props & 0x1F); + } + + boolean isJavaIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) >= 0x00005000); + } + + boolean isJavaIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00003000) != 0); + } + + boolean isUnicodeIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00007000); + } + + boolean isUnicodeIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00001000) != 0); + } + + boolean isIdentifierIgnorable(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00001000); + } + + int toLowerCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00020000) != 0) { + int offset = val << 5 >> (5+18); + mapChar = ch + offset; + } + return mapChar; + } + + int toUpperCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00010000) != 0) { + int offset = val << 5 >> (5+18); + mapChar = ch - offset; + } + return mapChar; + } + + int toTitleCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00008000) != 0) { + // There is a titlecase equivalent. Perform further checks: + if ((val & 0x00010000) == 0) { + // The character does not have an uppercase equivalent, so it must + // already be uppercase; so add 1 to get the titlecase form. + mapChar = ch + 1; + } + else if ((val & 0x00020000) == 0) { + // The character does not have a lowercase equivalent, so it must + // already be lowercase; so subtract 1 to get the titlecase form. + mapChar = ch - 1; + } + // else { + // The character has both an uppercase equivalent and a lowercase + // equivalent, so it must itself be a titlecase form; return it. + // return ch; + //} + } + else if ((val & 0x00010000) != 0) { + // This character has no titlecase equivalent but it does have an + // uppercase equivalent, so use that (subtract the signed case offset). + mapChar = toUpperCase(ch); + } + return mapChar; + } + + int digit(int ch, int radix) { + int value = -1; + if (radix >= Character.MIN_RADIX && radix <= Character.MAX_RADIX) { + int val = getProperties(ch); + int kind = val & 0x1F; + if (kind == Character.DECIMAL_DIGIT_NUMBER) { + value = ch + ((val & 0x3E0) >> 5) & 0x1F; + } + else if ((val & 0xC00) == 0x00000C00) { + // Java supradecimal digit + value = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + } + } + return (value < radix) ? value : -1; + } + + int getNumericValue(int ch) { + int val = getProperties(ch); + int retval = -1; + + switch (val & 0xC00) { + default: // cannot occur + case (0x00000000): // not numeric + retval = -1; + break; + case (0x00000400): // simple numeric + retval = ch + ((val & 0x3E0) >> 5) & 0x1F; + break; + case (0x00000800) : // "strange" numeric + retval = -2; + break; + case (0x00000C00): // Java supradecimal + retval = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + break; + } + return retval; + } + + boolean isWhitespace(int ch) { + return (getProperties(ch) & 0x00007000) == 0x00004000; + } + + byte getDirectionality(int ch) { + int val = getProperties(ch); + byte directionality = (byte)((val & 0x78000000) >> 27); + if (directionality == 0xF ) { + directionality = Character.DIRECTIONALITY_UNDEFINED; + } + return directionality; + } + + boolean isMirrored(int ch) { + return (getProperties(ch) & 0x80000000) != 0; + } + + static final CharacterData instance = new CharacterData02(); + private CharacterData02() {}; + + // The following tables and code generated using: + // java GenerateCharacter -plane 2 -template ../../tools/GenerateCharacter/CharacterData02.java.template -spec ../../tools/UnicodeData/UnicodeData.txt -specialcasing ../../tools/UnicodeData/SpecialCasing.txt -o /notnfs/langel/icedtea-ecj/generated/java/lang/CharacterData02.java -string -usecharforbyte 11 4 1 + // The X table has 2048 entries for a total of 4096 bytes. + + static final char X[] = ( + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\020\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\060\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040").toCharArray(); + + // The Y table has 64 entries for a total of 128 bytes. + + static final char Y[] = ( + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\000\000\002\004\004\004\004\004\004\004\004\004\004"+ + "\004\004\004\004\004\004\004\004\004\004\000\000\000\000\000\000\000\000\000"+ + "\000\000\000\000\000\000\004").toCharArray(); + + // The A table has 6 entries for a total of 24 bytes. + + static final int A[] = new int[6]; + static final String A_DATA = + "\000\u7005\000\u7005\000\u7005\u7800\000\u7800\000\u7800\000"; + + // In all, the character property tables require 4248 bytes. + + static { + { // THIS CODE WAS AUTOMATICALLY CREATED BY GenerateCharacter: + char[] data = A_DATA.toCharArray(); + assert (data.length == (6 * 2)); + int i = 0, j = 0; + while (i < (6 * 2)) { + int entry = data[i++] << 16; + A[j++] = entry | data[i++]; + } + } + + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/java/lang/CharacterData0E.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,361 @@ +// This file was generated AUTOMATICALLY from a template file Wed Nov 07 13:33:46 EST 2007 +/* + * Copyright 2003-2006 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Sun designates this + * particular file as subject to the "Classpath" exception as provided + * by Sun in the LICENSE file that accompanied this code. + * + * This code 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 General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package java.lang; + +/** The CharacterData class encapsulates the large tables found in + Java.lang.Character. */ + +class CharacterData0E extends CharacterData { + /* The character properties are currently encoded into 32 bits in the following manner: + 1 bit mirrored property + 4 bits directionality property + 9 bits signed offset used for converting case + 1 bit if 1, adding the signed offset converts the character to lowercase + 1 bit if 1, subtracting the signed offset converts the character to uppercase + 1 bit if 1, this character has a titlecase equivalent (possibly itself) + 3 bits 0 may not be part of an identifier + 1 ignorable control; may continue a Unicode identifier or Java identifier + 2 may continue a Java identifier but not a Unicode identifier (unused) + 3 may continue a Unicode identifier or Java identifier + 4 is a Java whitespace character + 5 may start or continue a Java identifier; + may continue but not start a Unicode identifier (underscores) + 6 may start or continue a Java identifier but not a Unicode identifier ($) + 7 may start or continue a Unicode identifier or Java identifier + Thus: + 5, 6, 7 may start a Java identifier + 1, 2, 3, 5, 6, 7 may continue a Java identifier + 7 may start a Unicode identifier + 1, 3, 5, 7 may continue a Unicode identifier + 1 is ignorable within an identifier + 4 is Java whitespace + 2 bits 0 this character has no numeric property + 1 adding the digit offset to the character code and then + masking with 0x1F will produce the desired numeric value + 2 this character has a "strange" numeric value + 3 a Java supradecimal digit: adding the digit offset to the + character code, then masking with 0x1F, then adding 10 + will produce the desired numeric value + 5 bits digit offset + 5 bits character type + + The encoding of character properties is subject to change at any time. + */ + + int getProperties(int ch) { + char offset = (char)ch; + int props = A[Y[X[offset>>5]|((offset>>1)&0xF)]|(offset&0x1)]; + return props; + } + + int getType(int ch) { + int props = getProperties(ch); + return (props & 0x1F); + } + + boolean isJavaIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) >= 0x00005000); + } + + boolean isJavaIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00003000) != 0); + } + + boolean isUnicodeIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00007000); + } + + boolean isUnicodeIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00001000) != 0); + } + + boolean isIdentifierIgnorable(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00001000); + } + + int toLowerCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00020000) != 0) { + int offset = val << 5 >> (5+18); + mapChar = ch + offset; + } + return mapChar; + } + + int toUpperCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00010000) != 0) { + int offset = val << 5 >> (5+18); + mapChar = ch - offset; + } + return mapChar; + } + + int toTitleCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00008000) != 0) { + // There is a titlecase equivalent. Perform further checks: + if ((val & 0x00010000) == 0) { + // The character does not have an uppercase equivalent, so it must + // already be uppercase; so add 1 to get the titlecase form. + mapChar = ch + 1; + } + else if ((val & 0x00020000) == 0) { + // The character does not have a lowercase equivalent, so it must + // already be lowercase; so subtract 1 to get the titlecase form. + mapChar = ch - 1; + } + // else { + // The character has both an uppercase equivalent and a lowercase + // equivalent, so it must itself be a titlecase form; return it. + // return ch; + //} + } + else if ((val & 0x00010000) != 0) { + // This character has no titlecase equivalent but it does have an + // uppercase equivalent, so use that (subtract the signed case offset). + mapChar = toUpperCase(ch); + } + return mapChar; + } + + int digit(int ch, int radix) { + int value = -1; + if (radix >= Character.MIN_RADIX && radix <= Character.MAX_RADIX) { + int val = getProperties(ch); + int kind = val & 0x1F; + if (kind == Character.DECIMAL_DIGIT_NUMBER) { + value = ch + ((val & 0x3E0) >> 5) & 0x1F; + } + else if ((val & 0xC00) == 0x00000C00) { + // Java supradecimal digit + value = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + } + } + return (value < radix) ? value : -1; + } + + int getNumericValue(int ch) { + int val = getProperties(ch); + int retval = -1; + + switch (val & 0xC00) { + default: // cannot occur + case (0x00000000): // not numeric + retval = -1; + break; + case (0x00000400): // simple numeric + retval = ch + ((val & 0x3E0) >> 5) & 0x1F; + break; + case (0x00000800) : // "strange" numeric + retval = -2; + break; + case (0x00000C00): // Java supradecimal + retval = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + break; + } + return retval; + } + + boolean isWhitespace(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00004000); + } + + byte getDirectionality(int ch) { + int val = getProperties(ch); + byte directionality = (byte)((val & 0x78000000) >> 27); + if (directionality == 0xF ) { + directionality = Character.DIRECTIONALITY_UNDEFINED; + } + return directionality; + } + + boolean isMirrored(int ch) { + int props = getProperties(ch); + return ((props & 0x80000000) != 0); + } + + static final CharacterData instance = new CharacterData0E(); + private CharacterData0E() {}; + + // The following tables and code generated using: + // java GenerateCharacter -plane 14 -template ../../tools/GenerateCharacter/CharacterData0E.java.template -spec ../../tools/UnicodeData/UnicodeData.txt -specialcasing ../../tools/UnicodeData/SpecialCasing.txt -o /notnfs/langel/icedtea-ecj/generated/java/lang/CharacterData0E.java -string -usecharforbyte 11 4 1 + // The X table has 2048 entries for a total of 4096 bytes. + + static final char X[] = ( + "\000\020\020\020\040\040\040\040\060\060\060\060\060\060\060\100\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040"+ + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040").toCharArray(); + + // The Y table has 80 entries for a total of 160 bytes. + + static final char Y[] = ( + "\000\002\002\002\002\002\002\002\002\002\002\002\002\002\002\002\004\004\004"+ + "\004\004\004\004\004\004\004\004\004\004\004\004\004\002\002\002\002\002\002"+ + "\002\002\002\002\002\002\002\002\002\002\006\006\006\006\006\006\006\006\006"+ + "\006\006\006\006\006\006\006\006\006\006\006\006\006\006\006\002\002\002\002"+ + "\002\002\002\002").toCharArray(); + + // The A table has 8 entries for a total of 32 bytes. + + static final int A[] = new int[8]; + static final String A_DATA = + "\u7800\000\u4800\u1010\u7800\000\u7800\000\u4800\u1010\u4800\u1010\u4000\u3006"+ + "\u4000\u3006"; + + // In all, the character property tables require 4288 bytes. + + static { + { // THIS CODE WAS AUTOMATICALLY CREATED BY GenerateCharacter: + char[] data = A_DATA.toCharArray(); + assert (data.length == (8 * 2)); + int i = 0, j = 0; + while (i < (8 * 2)) { + int entry = data[i++] << 16; + A[j++] = entry | data[i++]; + } + } + + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/java/lang/CharacterDataLatin1.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,287 @@ +// This file was generated AUTOMATICALLY from a template file Wed Nov 07 13:33:45 EST 2007 +/* + * Copyright 2002-2006 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Sun designates this + * particular file as subject to the "Classpath" exception as provided + * by Sun in the LICENSE file that accompanied this code. + * + * This code 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 General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package java.lang; + +/** The CharacterData class encapsulates the large tables found in + Java.lang.Character. */ + +class CharacterDataLatin1 extends CharacterData { + + /* The character properties are currently encoded into 32 bits in the following manner: + 1 bit mirrored property + 4 bits directionality property + 9 bits signed offset used for converting case + 1 bit if 1, adding the signed offset converts the character to lowercase + 1 bit if 1, subtracting the signed offset converts the character to uppercase + 1 bit if 1, this character has a titlecase equivalent (possibly itself) + 3 bits 0 may not be part of an identifier + 1 ignorable control; may continue a Unicode identifier or Java identifier + 2 may continue a Java identifier but not a Unicode identifier (unused) + 3 may continue a Unicode identifier or Java identifier + 4 is a Java whitespace character + 5 may start or continue a Java identifier; + may continue but not start a Unicode identifier (underscores) + 6 may start or continue a Java identifier but not a Unicode identifier ($) + 7 may start or continue a Unicode identifier or Java identifier + Thus: + 5, 6, 7 may start a Java identifier + 1, 2, 3, 5, 6, 7 may continue a Java identifier + 7 may start a Unicode identifier + 1, 3, 5, 7 may continue a Unicode identifier + 1 is ignorable within an identifier + 4 is Java whitespace + 2 bits 0 this character has no numeric property + 1 adding the digit offset to the character code and then + masking with 0x1F will produce the desired numeric value + 2 this character has a "strange" numeric value + 3 a Java supradecimal digit: adding the digit offset to the + character code, then masking with 0x1F, then adding 10 + will produce the desired numeric value + 5 bits digit offset + 5 bits character type + + The encoding of character properties is subject to change at any time. + */ + + int getProperties(int ch) { + char offset = (char)ch; + int props = A[offset]; + return props; + } + + int getType(int ch) { + int props = getProperties(ch); + return (props & 0x1F); + } + + boolean isJavaIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) >= 0x00005000); + } + + boolean isJavaIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00003000) != 0); + } + + boolean isUnicodeIdentifierStart(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00007000); + } + + boolean isUnicodeIdentifierPart(int ch) { + int props = getProperties(ch); + return ((props & 0x00001000) != 0); + } + + boolean isIdentifierIgnorable(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00001000); + } + + int toLowerCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if (((val & 0x00020000) != 0) && + ((val & 0x07FC0000) != 0x07FC0000)) { + int offset = val << 5 >> (5+18); + mapChar = ch + offset; + } + return mapChar; + } + + int toUpperCase(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00010000) != 0) { + if ((val & 0x07FC0000) != 0x07FC0000) { + int offset = val << 5 >> (5+18); + mapChar = ch - offset; + } else if (ch == 0x00B5) { + mapChar = 0x039C; + } + } + return mapChar; + } + + int toTitleCase(int ch) { + return toUpperCase(ch); + } + + int digit(int ch, int radix) { + int value = -1; + if (radix >= Character.MIN_RADIX && radix <= Character.MAX_RADIX) { + int val = getProperties(ch); + int kind = val & 0x1F; + if (kind == Character.DECIMAL_DIGIT_NUMBER) { + value = ch + ((val & 0x3E0) >> 5) & 0x1F; + } + else if ((val & 0xC00) == 0x00000C00) { + // Java supradecimal digit + value = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + } + } + return (value < radix) ? value : -1; + } + + int getNumericValue(int ch) { + int val = getProperties(ch); + int retval = -1; + + switch (val & 0xC00) { + default: // cannot occur + case (0x00000000): // not numeric + retval = -1; + break; + case (0x00000400): // simple numeric + retval = ch + ((val & 0x3E0) >> 5) & 0x1F; + break; + case (0x00000800) : // "strange" numeric + retval = -2; + break; + case (0x00000C00): // Java supradecimal + retval = (ch + ((val & 0x3E0) >> 5) & 0x1F) + 10; + break; + } + return retval; + } + + boolean isWhitespace(int ch) { + int props = getProperties(ch); + return ((props & 0x00007000) == 0x00004000); + } + + byte getDirectionality(int ch) { + int val = getProperties(ch); + byte directionality = (byte)((val & 0x78000000) >> 27); + + if (directionality == 0xF ) { + directionality = -1; + } + return directionality; + } + + boolean isMirrored(int ch) { + int props = getProperties(ch); + return ((props & 0x80000000) != 0); + } + + int toUpperCaseEx(int ch) { + int mapChar = ch; + int val = getProperties(ch); + + if ((val & 0x00010000) != 0) { + if ((val & 0x07FC0000) != 0x07FC0000) { + int offset = val << 5 >> (5+18); + mapChar = ch - offset; + } + else { + switch(ch) { + // map overflow characters + case 0x00B5 : mapChar = 0x039C; break; + default : mapChar = Character.ERROR; break; + } + } + } + return mapChar; + } + + static char[] sharpsMap = new char[] {'S', 'S'}; + + char[] toUpperCaseCharArray(int ch) { + char[] upperMap = {(char)ch}; + if (ch == 0x00DF) { + upperMap = sharpsMap; + } + return upperMap; + } + + static final CharacterDataLatin1 instance = new CharacterDataLatin1(); + private CharacterDataLatin1() {}; + + // The following tables and code generated using: + // java GenerateCharacter -template ../../tools/GenerateCharacter/CharacterDataLatin1.java.template -spec ../../tools/UnicodeData/UnicodeData.txt -specialcasing ../../tools/UnicodeData/SpecialCasing.txt -o /notnfs/langel/icedtea-ecj/generated/java/lang/CharacterDataLatin1.java -string -usecharforbyte -latin1 8 + // The A table has 256 entries for a total of 1024 bytes. + + static final int A[] = new int[256]; + static final String A_DATA = + "\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800"+ + "\u100F\u4800\u100F\u4800\u100F\u5800\u400F\u5000\u400F\u5800\u400F\u6000\u400F"+ + "\u5000\u400F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800"+ + "\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F"+ + "\u4800\u100F\u4800\u100F\u5000\u400F\u5000\u400F\u5000\u400F\u5800\u400F\u6000"+ + "\u400C\u6800\030\u6800\030\u2800\030\u2800\u601A\u2800\030\u6800\030\u6800"+ + "\030\uE800\025\uE800\026\u6800\030\u2800\031\u3800\030\u2800\024\u3800\030"+ + "\u2000\030\u1800\u3609\u1800\u3609\u1800\u3609\u1800\u3609\u1800\u3609\u1800"+ + "\u3609\u1800\u3609\u1800\u3609\u1800\u3609\u1800\u3609\u3800\030\u6800\030"+ + "\uE800\031\u6800\031\uE800\031\u6800\030\u6800\030\202\u7FE1\202\u7FE1\202"+ + "\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1"+ + "\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202"+ + "\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1\202\u7FE1"+ + "\202\u7FE1\uE800\025\u6800\030\uE800\026\u6800\033\u6800\u5017\u6800\033\201"+ + "\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2"+ + "\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201"+ + "\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2\201\u7FE2"+ + "\201\u7FE2\201\u7FE2\201\u7FE2\uE800\025\u6800\031\uE800\026\u6800\031\u4800"+ + "\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u5000\u100F"+ + "\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800"+ + "\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F"+ + "\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800"+ + "\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F\u4800\u100F"+ + "\u3800\014\u6800\030\u2800\u601A\u2800\u601A\u2800\u601A\u2800\u601A\u6800"+ + "\034\u6800\034\u6800\033\u6800\034\000\u7002\uE800\035\u6800\031\u6800\u1010"+ + "\u6800\034\u6800\033\u2800\034\u2800\031\u1800\u060B\u1800\u060B\u6800\033"+ + "\u07FD\u7002\u6800\034\u6800\030\u6800\033\u1800\u050B\000\u7002\uE800\036"+ + "\u6800\u080B\u6800\u080B\u6800\u080B\u6800\030\202\u7001\202\u7001\202\u7001"+ + "\202\u7001\202\u7001\202\u7001\202\u7001\202\u7001\202\u7001\202\u7001\202"+ + "\u7001\202\u7001\202\u7001\202\u7001\202\u7001\202\u7001\202\u7001\202\u7001"+ + "\202\u7001\202\u7001\202\u7001\202\u7001\202\u7001\u6800\031\202\u7001\202"+ + "\u7001\202\u7001\202\u7001\202\u7001\202\u7001\202\u7001\u07FD\u7002\201\u7002"+ + "\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201"+ + "\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002"+ + "\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\u6800"+ + "\031\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002\201\u7002"+ + "\u061D\u7002"; + + // In all, the character property tables require 1024 bytes. + + static { + { // THIS CODE WAS AUTOMATICALLY CREATED BY GenerateCharacter: + char[] data = A_DATA.toCharArray(); + assert (data.length == (256 * 2)); + int i = 0, j = 0; + while (i < (256 * 2)) { + int entry = data[i++] << 16; + A[j++] = entry | data[i++]; + } + } + + } +} +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/AdapterActivator.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,21 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/AdapterActivator.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * An adapter activator supplies a POA with the ability + * to create child POAs on demand, as a side-effect of + * receiving a request that names the child POA + * (or one of its children), or when find_POA is called + * with an activate parameter value of TRUE. + */ +public interface AdapterActivator extends AdapterActivatorOperations, org.omg.CORBA.Object, org.omg.CORBA.portable.IDLEntity +{ +} // interface AdapterActivator
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/AdapterActivatorOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,36 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/AdapterActivatorOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * An adapter activator supplies a POA with the ability + * to create child POAs on demand, as a side-effect of + * receiving a request that names the child POA + * (or one of its children), or when find_POA is called + * with an activate parameter value of TRUE. + */ +public interface AdapterActivatorOperations +{ + + /** + * This operation is invoked when the ORB receives + * a request for an object reference that identifies + * a target POA that does not exist. The ORB invokes + * this operation once for each POA that must be + * created in order for the target POA to exist. + * @param parent indicates the parent POA for the POA + * that needs to be created. + * @param name identifies the name of the POA relative to + * the parent. + * @return returns TRUE if the POA was created or FALSE + * otherwise. + */ + boolean unknown_adapter (org.omg.PortableServer.POA parent, String name); +} // interface AdapterActivatorOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/Current.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,32 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/Current.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The PortableServer::Current interface, derived from + * CORBA::Current, provides method implementations with + * access to the identity of the object on which the + * method was invoked. The Current interface is provided + * to support servants that implement multiple objects, + * but can be used within the context of POA-dispatched + * method invocations on any servant. To provide location + * transparency, ORBs are required to support use of + * Current in the context of both locally and remotely + * invoked operations. An instance of Current can be + * obtained by the application by issuing the + * CORBA::ORB::resolve_initial_references("POACurrent") + * operation. Thereafter, it can be used within the + * context of a method dispatched by the POA to obtain + * the POA and ObjectId that identify the object on + * which that operation was invoked. + */ +public interface Current extends CurrentOperations, org.omg.CORBA.Current, org.omg.CORBA.portable.IDLEntity +{ +} // interface Current
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/CurrentOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,56 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/CurrentOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The PortableServer::Current interface, derived from + * CORBA::Current, provides method implementations with + * access to the identity of the object on which the + * method was invoked. The Current interface is provided + * to support servants that implement multiple objects, + * but can be used within the context of POA-dispatched + * method invocations on any servant. To provide location + * transparency, ORBs are required to support use of + * Current in the context of both locally and remotely + * invoked operations. An instance of Current can be + * obtained by the application by issuing the + * CORBA::ORB::resolve_initial_references("POACurrent") + * operation. Thereafter, it can be used within the + * context of a method dispatched by the POA to obtain + * the POA and ObjectId that identify the object on + * which that operation was invoked. + */ +public interface CurrentOperations extends org.omg.CORBA.CurrentOperations +{ + + /** + * Returns reference to the POA implementing the + * object in whose context it is called. + * + * @return The poa implementing the object + * + * @exception NoContext is raised when the operation is + * outside the context of a POA-dispatched + * operation + */ + org.omg.PortableServer.POA get_POA () throws org.omg.PortableServer.CurrentPackage.NoContext; + + /** + * Returns the ObjectId identifying the object in + * whose context it is called. + * + * @return the ObjectId of the object + * + * @exception NoContext is raised when the operation + * is called outside the context of a POA-dispatched + * operation. + */ + byte[] get_object_id () throws org.omg.PortableServer.CurrentPackage.NoContext; +} // interface CurrentOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/CurrentPackage/NoContext.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.CurrentPackage; + + +/** +* org/omg/PortableServer/CurrentPackage/NoContext.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class NoContext extends org.omg.CORBA.UserException +{ + + public NoContext () + { + super(NoContextHelper.id()); + } // ctor + + + public NoContext (String $reason) + { + super(NoContextHelper.id() + " " + $reason); + } // ctor + +} // class NoContext
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/CurrentPackage/NoContextHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.CurrentPackage; + + +/** +* org/omg/PortableServer/CurrentPackage/NoContextHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class NoContextHelper +{ + private static String _id = "IDL:omg.org/PortableServer/Current/NoContext:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.CurrentPackage.NoContext that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.CurrentPackage.NoContext extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.CurrentPackage.NoContextHelper.id (), "NoContext", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.CurrentPackage.NoContext read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.CurrentPackage.NoContext value = new org.omg.PortableServer.CurrentPackage.NoContext (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.CurrentPackage.NoContext value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ForwardRequest.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,33 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ForwardRequest.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class ForwardRequest extends org.omg.CORBA.UserException +{ + public org.omg.CORBA.Object forward_reference = null; + + public ForwardRequest () + { + super(ForwardRequestHelper.id()); + } // ctor + + public ForwardRequest (org.omg.CORBA.Object _forward_reference) + { + super(ForwardRequestHelper.id()); + forward_reference = _forward_reference; + } // ctor + + + public ForwardRequest (String $reason, org.omg.CORBA.Object _forward_reference) + { + super(ForwardRequestHelper.id() + " " + $reason); + forward_reference = _forward_reference; + } // ctor + +} // class ForwardRequest
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ForwardRequestHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,79 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ForwardRequestHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class ForwardRequestHelper +{ + private static String _id = "IDL:omg.org/PortableServer/ForwardRequest:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.ForwardRequest that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.ForwardRequest extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [1]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + _tcOf_members0 = org.omg.CORBA.ObjectHelper.type (); + _members0[0] = new org.omg.CORBA.StructMember ( + "forward_reference", + _tcOf_members0, + null); + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.ForwardRequestHelper.id (), "ForwardRequest", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.ForwardRequest read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.ForwardRequest value = new org.omg.PortableServer.ForwardRequest (); + // read and discard the repository ID + istream.read_string (); + value.forward_reference = org.omg.CORBA.ObjectHelper.read (istream); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.ForwardRequest value) + { + // write the repository ID + ostream.write_string (id ()); + org.omg.CORBA.ObjectHelper.write (ostream, value.forward_reference); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ID_ASSIGNMENT_POLICY_ID.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ID_ASSIGNMENT_POLICY_ID.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public interface ID_ASSIGNMENT_POLICY_ID +{ + + /** + * The value representing ID_ASSIGNMENT_POLICY_ID. + */ + public static final int value = (int)(19L); +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ID_UNIQUENESS_POLICY_ID.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ID_UNIQUENESS_POLICY_ID.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public interface ID_UNIQUENESS_POLICY_ID +{ + + /** + * The value representing ID_UNIQUENESS_POLICY_ID. + */ + public static final int value = (int)(18L); +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/IMPLICIT_ACTIVATION_POLICY_ID.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/IMPLICIT_ACTIVATION_POLICY_ID.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public interface IMPLICIT_ACTIVATION_POLICY_ID +{ + + /** + * The value representing IMPLICIT_ACTIVATION_POLICY_ID. + */ + public static final int value = (int)(20L); +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/IdAssignmentPolicy.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,19 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/IdAssignmentPolicy.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * IdAssignmentPolicy specifies whether Object Ids in + * the created POA are generated by the application or + * by the ORB. The default is SYSTEM_ID. + */ +public interface IdAssignmentPolicy extends IdAssignmentPolicyOperations, org.omg.CORBA.Policy, org.omg.CORBA.portable.IDLEntity +{ +} // interface IdAssignmentPolicy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/IdAssignmentPolicyOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,24 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/IdAssignmentPolicyOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * IdAssignmentPolicy specifies whether Object Ids in + * the created POA are generated by the application or + * by the ORB. The default is SYSTEM_ID. + */ +public interface IdAssignmentPolicyOperations extends org.omg.CORBA.PolicyOperations +{ + + /** + * specifies the policy value + */ + org.omg.PortableServer.IdAssignmentPolicyValue value (); +} // interface IdAssignmentPolicyOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/IdAssignmentPolicyValue.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,50 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/IdAssignmentPolicyValue.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The IdAssignmentPolicyValue can have the following + * values. USER_ID - Objects created with that POA are + * assigned Object Ids only by the application. + * SYSTEM_ID - Objects created with that POA are + * assigned Object Ids only by the POA. If the POA also + * has the PERSISTENT policy, assigned Object Ids must + * be unique across all instantiations of the same POA. + */ +public class IdAssignmentPolicyValue implements org.omg.CORBA.portable.IDLEntity +{ + private int __value; + private static int __size = 2; + private static org.omg.PortableServer.IdAssignmentPolicyValue[] __array = new org.omg.PortableServer.IdAssignmentPolicyValue [__size]; + + public static final int _USER_ID = 0; + public static final org.omg.PortableServer.IdAssignmentPolicyValue USER_ID = new org.omg.PortableServer.IdAssignmentPolicyValue(_USER_ID); + public static final int _SYSTEM_ID = 1; + public static final org.omg.PortableServer.IdAssignmentPolicyValue SYSTEM_ID = new org.omg.PortableServer.IdAssignmentPolicyValue(_SYSTEM_ID); + + public int value () + { + return __value; + } + + public static org.omg.PortableServer.IdAssignmentPolicyValue from_int (int value) + { + if (value >= 0 && value < __size) + return __array[value]; + else + throw new org.omg.CORBA.BAD_PARAM (); + } + + protected IdAssignmentPolicyValue (int value) + { + __value = value; + __array[__value] = this; + } +} // class IdAssignmentPolicyValue
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/IdUniquenessPolicy.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,19 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/IdUniquenessPolicy.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The IdUniquenessPolicy specifies whether the servants + * activated in the created POA must have unique object i + * identities. The default is UNIQUE_ID. + */ +public interface IdUniquenessPolicy extends IdUniquenessPolicyOperations, org.omg.CORBA.Policy, org.omg.CORBA.portable.IDLEntity +{ +} // interface IdUniquenessPolicy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/IdUniquenessPolicyOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,24 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/IdUniquenessPolicyOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The IdUniquenessPolicy specifies whether the servants + * activated in the created POA must have unique object i + * identities. The default is UNIQUE_ID. + */ +public interface IdUniquenessPolicyOperations extends org.omg.CORBA.PolicyOperations +{ + + /** + * specifies the policy value + */ + org.omg.PortableServer.IdUniquenessPolicyValue value (); +} // interface IdUniquenessPolicyOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/IdUniquenessPolicyValue.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,48 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/IdUniquenessPolicyValue.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * IdUniquenessPolicyValue can have the following values. + * UNIQUE_ID - Servants activated with that POA support + * exactly one Object Id. MULTIPLE_ID - a servant + * activated with that POA may support one or more + * Object Ids. + */ +public class IdUniquenessPolicyValue implements org.omg.CORBA.portable.IDLEntity +{ + private int __value; + private static int __size = 2; + private static org.omg.PortableServer.IdUniquenessPolicyValue[] __array = new org.omg.PortableServer.IdUniquenessPolicyValue [__size]; + + public static final int _UNIQUE_ID = 0; + public static final org.omg.PortableServer.IdUniquenessPolicyValue UNIQUE_ID = new org.omg.PortableServer.IdUniquenessPolicyValue(_UNIQUE_ID); + public static final int _MULTIPLE_ID = 1; + public static final org.omg.PortableServer.IdUniquenessPolicyValue MULTIPLE_ID = new org.omg.PortableServer.IdUniquenessPolicyValue(_MULTIPLE_ID); + + public int value () + { + return __value; + } + + public static org.omg.PortableServer.IdUniquenessPolicyValue from_int (int value) + { + if (value >= 0 && value < __size) + return __array[value]; + else + throw new org.omg.CORBA.BAD_PARAM (); + } + + protected IdUniquenessPolicyValue (int value) + { + __value = value; + __array[__value] = this; + } +} // class IdUniquenessPolicyValue
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ImplicitActivationPolicy.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ImplicitActivationPolicy.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * This policy specifies whether implicit activation + * of servants is supported in the created POA. + */ +public interface ImplicitActivationPolicy extends ImplicitActivationPolicyOperations, org.omg.CORBA.Policy, org.omg.CORBA.portable.IDLEntity +{ +} // interface ImplicitActivationPolicy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ImplicitActivationPolicyOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,23 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ImplicitActivationPolicyOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * This policy specifies whether implicit activation + * of servants is supported in the created POA. + */ +public interface ImplicitActivationPolicyOperations extends org.omg.CORBA.PolicyOperations +{ + + /** + * specifies the policy value + */ + org.omg.PortableServer.ImplicitActivationPolicyValue value (); +} // interface ImplicitActivationPolicyOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ImplicitActivationPolicyValue.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,50 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ImplicitActivationPolicyValue.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * ImplicitActivationPolicyValue has the following + * semantics. + * IMPLICIT_ACTIVATION to indicate implicit activation + * of servants. This requires SYSTEM_ID and RETAIN + * policies to be set. + * NO_IMPLICIT_ACTIVATION to indicate no implicit + * servant activation. + */ +public class ImplicitActivationPolicyValue implements org.omg.CORBA.portable.IDLEntity +{ + private int __value; + private static int __size = 2; + private static org.omg.PortableServer.ImplicitActivationPolicyValue[] __array = new org.omg.PortableServer.ImplicitActivationPolicyValue [__size]; + + public static final int _IMPLICIT_ACTIVATION = 0; + public static final org.omg.PortableServer.ImplicitActivationPolicyValue IMPLICIT_ACTIVATION = new org.omg.PortableServer.ImplicitActivationPolicyValue(_IMPLICIT_ACTIVATION); + public static final int _NO_IMPLICIT_ACTIVATION = 1; + public static final org.omg.PortableServer.ImplicitActivationPolicyValue NO_IMPLICIT_ACTIVATION = new org.omg.PortableServer.ImplicitActivationPolicyValue(_NO_IMPLICIT_ACTIVATION); + + public int value () + { + return __value; + } + + public static org.omg.PortableServer.ImplicitActivationPolicyValue from_int (int value) + { + if (value >= 0 && value < __size) + return __array[value]; + else + throw new org.omg.CORBA.BAD_PARAM (); + } + + protected ImplicitActivationPolicyValue (int value) + { + __value = value; + __array[__value] = this; + } +} // class ImplicitActivationPolicyValue
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/LIFESPAN_POLICY_ID.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/LIFESPAN_POLICY_ID.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public interface LIFESPAN_POLICY_ID +{ + + /** + * The value representing LIFESPAN_POLICY_ID. + */ + public static final int value = (int)(17L); +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/LifespanPolicy.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,19 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/LifespanPolicy.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The LifespanPolicy specifies the lifespan of the + * objects implemented in the created POA. The default + * is TRANSIENT. + */ +public interface LifespanPolicy extends LifespanPolicyOperations, org.omg.CORBA.Policy, org.omg.CORBA.portable.IDLEntity +{ +} // interface LifespanPolicy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/LifespanPolicyOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,24 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/LifespanPolicyOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The LifespanPolicy specifies the lifespan of the + * objects implemented in the created POA. The default + * is TRANSIENT. + */ +public interface LifespanPolicyOperations extends org.omg.CORBA.PolicyOperations +{ + + /** + * specifies the policy value + */ + org.omg.PortableServer.LifespanPolicyValue value (); +} // interface LifespanPolicyOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/LifespanPolicyValue.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,49 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/LifespanPolicyValue.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The LifespanPolicyValue can have the following values. + * TRANSIENT - The objects implemented in the POA + * cannot outlive the POA instance in which they are + * first created. + * PERSISTENT - The objects implemented in the POA can + * outlive the process in which they are first created. + */ +public class LifespanPolicyValue implements org.omg.CORBA.portable.IDLEntity +{ + private int __value; + private static int __size = 2; + private static org.omg.PortableServer.LifespanPolicyValue[] __array = new org.omg.PortableServer.LifespanPolicyValue [__size]; + + public static final int _TRANSIENT = 0; + public static final org.omg.PortableServer.LifespanPolicyValue TRANSIENT = new org.omg.PortableServer.LifespanPolicyValue(_TRANSIENT); + public static final int _PERSISTENT = 1; + public static final org.omg.PortableServer.LifespanPolicyValue PERSISTENT = new org.omg.PortableServer.LifespanPolicyValue(_PERSISTENT); + + public int value () + { + return __value; + } + + public static org.omg.PortableServer.LifespanPolicyValue from_int (int value) + { + if (value >= 0 && value < __size) + return __array[value]; + else + throw new org.omg.CORBA.BAD_PARAM (); + } + + protected LifespanPolicyValue (int value) + { + __value = value; + __array[__value] = this; + } +} // class LifespanPolicyValue
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POA.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,24 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/POA.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * A POA object manages the implementation of a + * collection of objects. The POA supports a name space + * for the objects, which are identified by Object Ids. + * A POA also provides a name space for POAs. A POA is + * created as a child of an existing POA, which forms a + * hierarchy starting with the root POA. A POA object + * must not be exported to other processes, or + * externalized with ORB::object_to_string. + */ +public interface POA extends POAOperations, org.omg.CORBA.Object, org.omg.CORBA.portable.IDLEntity +{ +} // interface POA
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAManager.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,20 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/POAManager.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * Each POA object has an associated POAManager object. + * A POA manager may be associated with one or more + * POA objects. A POA manager encapsulates the processing + * state of the POAs it is associated with. + */ +public interface POAManager extends POAManagerOperations, org.omg.CORBA.Object, org.omg.CORBA.portable.IDLEntity +{ +} // interface POAManager
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAManagerOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,78 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/POAManagerOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * Each POA object has an associated POAManager object. + * A POA manager may be associated with one or more + * POA objects. A POA manager encapsulates the processing + * state of the POAs it is associated with. + */ +public interface POAManagerOperations +{ + + /** + * This operation changes the state of the POA manager + * to active, causing associated POAs to start processing + * requests. + * @exception AdapterInactive is raised if the operation is + * invoked on the POAManager in inactive state. + */ + void activate () throws org.omg.PortableServer.POAManagerPackage.AdapterInactive; + + /** + * This operation changes the state of the POA manager + * to holding, causing associated POAs to queue incoming + * requests. + * @param wait_for_completion if FALSE, the operation + * returns immediately after changing state. + * If TRUE, it waits for all active requests + * to complete. + * @exception AdapterInactive is raised if the operation is + * invoked on the POAManager in inactive state. + */ + void hold_requests (boolean wait_for_completion) throws org.omg.PortableServer.POAManagerPackage.AdapterInactive; + + /** + * This operation changes the state of the POA manager + * to discarding. This causes associated POAs to discard + * incoming requests. + * @param wait_for_completion if FALSE, the operation + * returns immediately after changing state. + * If TRUE, it waits for all active requests + * to complete. + * @exception AdapterInactive is raised if the operation is + * invoked on the POAManager in inactive state. + */ + void discard_requests (boolean wait_for_completion) throws org.omg.PortableServer.POAManagerPackage.AdapterInactive; + + /** + * This operation changes the state of the POA manager + * to inactive, causing associated POAs to reject the + * requests that have not begun executing as well as + * as any new requests. + * @param etherealize_objects a flag to indicate whether + * to invoke the etherealize operation of the + * associated servant manager for all active + * objects. + * @param wait_for_completion if FALSE, the operation + * returns immediately after changing state. + * If TRUE, it waits for all active requests + * to complete. + * @exception AdapterInactive is raised if the operation is + * invoked on the POAManager in inactive state. + */ + void deactivate (boolean etherealize_objects, boolean wait_for_completion) throws org.omg.PortableServer.POAManagerPackage.AdapterInactive; + + /** + * This operation returns the state of the POA manager. + */ + org.omg.PortableServer.POAManagerPackage.State get_state (); +} // interface POAManagerOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAManagerPackage/AdapterInactive.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAManagerPackage; + + +/** +* org/omg/PortableServer/POAManagerPackage/AdapterInactive.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class AdapterInactive extends org.omg.CORBA.UserException +{ + + public AdapterInactive () + { + super(AdapterInactiveHelper.id()); + } // ctor + + + public AdapterInactive (String $reason) + { + super(AdapterInactiveHelper.id() + " " + $reason); + } // ctor + +} // class AdapterInactive
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAManagerPackage/AdapterInactiveHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAManagerPackage; + + +/** +* org/omg/PortableServer/POAManagerPackage/AdapterInactiveHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class AdapterInactiveHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POAManager/AdapterInactive:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAManagerPackage.AdapterInactive that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAManagerPackage.AdapterInactive extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAManagerPackage.AdapterInactiveHelper.id (), "AdapterInactive", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAManagerPackage.AdapterInactive read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAManagerPackage.AdapterInactive value = new org.omg.PortableServer.POAManagerPackage.AdapterInactive (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAManagerPackage.AdapterInactive value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAManagerPackage/State.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,48 @@ +package org.omg.PortableServer.POAManagerPackage; + + +/** +* org/omg/PortableServer/POAManagerPackage/State.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * Specifies the states for the POAManager + */ +public class State implements org.omg.CORBA.portable.IDLEntity +{ + private int __value; + private static int __size = 4; + private static org.omg.PortableServer.POAManagerPackage.State[] __array = new org.omg.PortableServer.POAManagerPackage.State [__size]; + + public static final int _HOLDING = 0; + public static final org.omg.PortableServer.POAManagerPackage.State HOLDING = new org.omg.PortableServer.POAManagerPackage.State(_HOLDING); + public static final int _ACTIVE = 1; + public static final org.omg.PortableServer.POAManagerPackage.State ACTIVE = new org.omg.PortableServer.POAManagerPackage.State(_ACTIVE); + public static final int _DISCARDING = 2; + public static final org.omg.PortableServer.POAManagerPackage.State DISCARDING = new org.omg.PortableServer.POAManagerPackage.State(_DISCARDING); + public static final int _INACTIVE = 3; + public static final org.omg.PortableServer.POAManagerPackage.State INACTIVE = new org.omg.PortableServer.POAManagerPackage.State(_INACTIVE); + + public int value () + { + return __value; + } + + public static org.omg.PortableServer.POAManagerPackage.State from_int (int value) + { + if (value >= 0 && value < __size) + return __array[value]; + else + throw new org.omg.CORBA.BAD_PARAM (); + } + + protected State (int value) + { + __value = value; + __array[__value] = this; + } +} // class State
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,467 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/POAOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * A POA object manages the implementation of a + * collection of objects. The POA supports a name space + * for the objects, which are identified by Object Ids. + * A POA also provides a name space for POAs. A POA is + * created as a child of an existing POA, which forms a + * hierarchy starting with the root POA. A POA object + * must not be exported to other processes, or + * externalized with ORB::object_to_string. + */ +public interface POAOperations +{ + + /** + * This operation creates a new POA as a child of the + * target POA. + * @param adapter_name identifies the new POA with + * respect to other POAs with the same parent POA. + * @param a_POAManager specifies the POA Manager to be + * associated with the new POA. + * @param policies specifies policy objects to be + * associated with the POA to control its behavior. + * @exception AdapterAlreadyExists specifies that the + * target POA already has a child POA with + * the specified name. + * @exception InvalidPolicy is raised if any of the + * policy objects are not valid for the ORB, + * or are in conflict, or require an + * administrative action that has not been + * performed. + */ + org.omg.PortableServer.POA create_POA (String adapter_name, org.omg.PortableServer.POAManager a_POAManager, org.omg.CORBA.Policy[] policies) throws org.omg.PortableServer.POAPackage.AdapterAlreadyExists, org.omg.PortableServer.POAPackage.InvalidPolicy; + + /** + * If the target POA is the parent of a child POA with + * the specified name (relative to the target POA), that + * child POA is returned. + * @param adapter_name POA name to be found. + * @param activate_it if a POA with the specified + * name does not exist and the value of + * the activate_it parameter is TRUE, the target + * POA's AdapterActivator, if one exists, + * is invoked. + * @return POA if one exists or is activated by the + * AdapterActivator. + * @return AdapterNonExistent is raised if POA with + * a specified name cannot be found or + * activated using AdapaterActivator. + */ + org.omg.PortableServer.POA find_POA (String adapter_name, boolean activate_it) throws org.omg.PortableServer.POAPackage.AdapterNonExistent; + + /** + * This operation destroys the POA and all descendant + * POAs. All descendant POAs are destroyed (recursively) + * before the destruction of the containing POA. The POA + * so destroyed (that is, the POA with its name) may be + * re-created later in the same process. + * @param etherealize_objects flag to indicate whether + * etherealize operation on servant manager needs + * to be called. + * @param wait_for_completion flag to indicate whether + * POA and its children need to wait for active + * requests and the etherealization to complete. + * + */ + void destroy (boolean etherealize_objects, boolean wait_for_completion); + + /** + * These operations each return a reference to a policy + * object with the specified value. + * @param value policy type + * @return ThreadPolcy Object + */ + org.omg.PortableServer.ThreadPolicy create_thread_policy (org.omg.PortableServer.ThreadPolicyValue value); + + /** + * These operations each return a reference to a policy + * object with the specified value. + * @param value policy type + * @return LifespanPolicy Object. + */ + org.omg.PortableServer.LifespanPolicy create_lifespan_policy (org.omg.PortableServer.LifespanPolicyValue value); + + /** + * These operations each return a reference to a policy + * object with the specified value. + * @param value policy type + * @return IdUniquenessPolicy Object. + */ + org.omg.PortableServer.IdUniquenessPolicy create_id_uniqueness_policy (org.omg.PortableServer.IdUniquenessPolicyValue value); + + /** + * These operations each return a reference to a policy + * object with the specified value. + * @param value policy type + * @return IdAssignmentPolicy Object. + */ + org.omg.PortableServer.IdAssignmentPolicy create_id_assignment_policy (org.omg.PortableServer.IdAssignmentPolicyValue value); + + /** + * These operations each return a reference to a policy + * object with the specified value. + * @param value policy type + * @return ImplicitActivationPolicy Object. + */ + org.omg.PortableServer.ImplicitActivationPolicy create_implicit_activation_policy (org.omg.PortableServer.ImplicitActivationPolicyValue value); + + /** + * These operations each return a reference to a policy + * object with the specified value. + * @param value policy type + * @return ServantRetentionPolicy Object. + */ + org.omg.PortableServer.ServantRetentionPolicy create_servant_retention_policy (org.omg.PortableServer.ServantRetentionPolicyValue value); + + /** + * These operations each return a reference to a policy + * object with the specified value. + * @param value policy type + * @return RequestProcessingPolicy Object. + */ + org.omg.PortableServer.RequestProcessingPolicy create_request_processing_policy (org.omg.PortableServer.RequestProcessingPolicyValue value); + + /** + * This attribute identifies the POA relative to its + * parent. This name is assigned when the POA is created. + */ + String the_name (); + + /** + * This attribute identifies the parent of the POA. + * The parent of the root POA is null. + */ + org.omg.PortableServer.POA the_parent (); + + /** + * This attribute identifies the current set of all + * child POAs of the POA. The set of child POAs + * includes only the POA's immediate children, and + * not their descendants. + */ + org.omg.PortableServer.POA[] the_children (); + + /** + * This attribute identifies the POA manager + * associated with the POA. + */ + org.omg.PortableServer.POAManager the_POAManager (); + + /** + * This attribute identifies the adapter activator + * associated with the POA. + */ + org.omg.PortableServer.AdapterActivator the_activator (); + + /** + * This attribute identifies the adapter activator + * associated with the POA. + */ + void the_activator (org.omg.PortableServer.AdapterActivator newThe_activator); + + /** + * + * If the ServantRetentionPolicy of the POA is RETAIN, + * then the ServantManager argument (imgr) shall support + * the ServantActivator interface. For a NON_RETAIN policy, + * the ServantManager shall support the ServantLocator + * interface. If the argument is nil, or does not support + * the required interface, then the OBJ_ADAPTER + * exception is raised. + * @return ServantManager associated with a POA or null if + * none exists. + * @exception WrongPolicy raised if the + * USE_SERVANT_MANAGER policy is not specified. + */ + org.omg.PortableServer.ServantManager get_servant_manager () throws org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * + * This operation sets the default servant manager + * associated with the POA. This operation may only be + * invoked once after a POA has been created. Attempting + * to set the servant manager after one has already + * been set will result in the BAD_INV_ORDER exception + * being raised. + * @param imgr servant manager to be used as a default. + * @exception WrongPolicy raised if the + * USE_SERVANT_MANAGER policy is not specified. + */ + void set_servant_manager (org.omg.PortableServer.ServantManager imgr) throws org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * This operation returns the default servant associated + * with the POA. + * @return p_servant default servant associated with a POA. + * @exception NoServant raised if no default servant is + * associated with the POA. + * @exception WrongPolicy raised if the + * USE_DEFAULT_SERVANT policy is not specified. + */ + org.omg.PortableServer.Servant get_servant () throws org.omg.PortableServer.POAPackage.NoServant, org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * + * This operation registers the specified servant with + * the POA as the default servant. This servant will + * be used for all requests for which no servant is + * found in the Active Object Map. + * @param p_servant servant to be used as a default. + * @exception WrongPolicy raised if the + * USE_DEFAULT_SERVANT policy is not specified. + */ + void set_servant (org.omg.PortableServer.Servant p_servant) throws org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * + * This operation generates an Object Id and enters + * the Object Id and the specified servant in the + * Active Object Map. + * @param p_servant servant to be associated with an + * object to be activated. + * @return POA generated object id. + * @exception ServantAlreadyActive is raised if the + * POA has UNIQUE_ID policy and servant is + * is already in the Active Object Map. + * @exception WrongPolicy raised if the SYSTEM_ID and + * RETAIN policies are not specified. + */ + byte[] activate_object (org.omg.PortableServer.Servant p_servant) throws org.omg.PortableServer.POAPackage.ServantAlreadyActive, org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * This operation enters an association between the + * specified Object Id and the specified servant in the + * Active Object Map. + * @param id object id for the object to be activated. + * @param p_servant servant to be associated with the + * object. + * @exception ServantAlreadyActive raised if the POA + * has the UNIQUE_ID policy and the servant + * is already in the Active Object Map. + * @exception ObjectAlreadyActive raised if the object is + * already active in the POA. + * @exception WrongPolicy raised if the RETAIN policy is + * is not specified. + */ + void activate_object_with_id (byte[] id, org.omg.PortableServer.Servant p_servant) throws org.omg.PortableServer.POAPackage.ServantAlreadyActive, org.omg.PortableServer.POAPackage.ObjectAlreadyActive, org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * + * This operation causes the ObjectId specified in the + * oid parameter to be deactivated. An ObjectId which + * has been deactivated continues to process requests + * until there are no active requests for that ObjectId. + * A deactivated ObjectId is removed from the Active + * Object Map when all requests executing for that + * ObjectId have completed. + * @param oid Object Id for the object to be deactivated. + * @exception ObjectNotActive if the object with the + * specified oid is not in the Active Object + * Map. + * @exception WrongPolicy raised if the RETAIN policy is + * is not specified. + */ + void deactivate_object (byte[] oid) throws org.omg.PortableServer.POAPackage.ObjectNotActive, org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * This operation creates an object reference that + * encapsulates a POA-generated Object Id value and + * the specified interface repository id. + * + * @param intf rep id for creating an object reference. + * @return object reference created using intf. + * @exception WrongPolicy if SYSTEM_ID policy is not + * specified. + */ + org.omg.CORBA.Object create_reference (String intf) throws org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * This operation creates an object reference that + * encapsulates the specified Object Id and interface + * repository Id values. It does not cause an activation + * to take place. The resulting reference may be passed + * to clients, so that subsequent requests on those + * references will cause the object to be activated + * if necessary, or the default servant used, depending + * on the applicable policies. + * @param oid object id for creating an objref + * @param intf rep id for creating an objref + * @return object reference created using oid and intf + * @exception BAD_PARAM is raised if the POA has the + * SYSTEM_ID policy and it detects that the + * Object Id value was not generated by the + * system or for this POA. + */ + org.omg.CORBA.Object create_reference_with_id (byte[] oid, String intf); + + /** + * This operation has four possible behaviors. + * 1. If the POA has the UNIQUE_ID policy and the + * specified servant is active, the Object Id associated + * with that servant is returned. + * 2. If the POA has the IMPLICIT_ACTIVATION policy and + * either the POA has the MULTIPLE_ID policy or the + * specified servant is not active, the servant is + * activated using a POA-generated Object Id and the + * Interface Id associated with the servant, and that + * Object Id is returned. + * 3. If the POA has the USE_DEFAULT_SERVANT policy, + * the servant specified is the default servant, and the + * operation is being invoked in the context of executing + * a request on the default servant, then the ObjectId + * associated with the current invocation is returned. + * 4. Otherwise, the ServantNotActive exception is raised. + * + * @param p_servant servant for which the object disi returned. + * @return object id associated with the servant. + * @exception ServantNotActive if the above rules and + * policy combination is not met. + * @exception WrongPolicy if the USE_DEFAULT_SERVANT policy + * or a combination of the RETAIN policy and + * either the UNIQUE_ID or IMPLICIT_ACTIVATION + * policies are not present. + */ + byte[] servant_to_id (org.omg.PortableServer.Servant p_servant) throws org.omg.PortableServer.POAPackage.ServantNotActive, org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * This operation requires the RETAIN policy and either + * the UNIQUE_ID or IMPLICIT_ACTIVATION policies if + * invoked outside the context of an operation dispatched + * by this POA. It has four possible behaviors. + * 1. If the POA has both the RETAIN and the + * UNIQUE_ID policy and the specified servant is active, + * an object reference encapsulating the information used + * to activate the servant is returned. + * 2. If the POA has both the RETAIN and the + * IMPLICIT_ACTIVATION policy and either the POA has the + * MULTIPLE_ID policy or the specified servant is not + * active, the servant is activated using a POA-generated + * Object Id and the Interface Id associated with the + * servant, and a corresponding object reference is + * returned. + * 3. If the operation was invoked in the context of + * executing a request on the specified servant, the + * reference associated with the current invocation + * is returned. + * 4. Otherwise, the ServantNotActive exception is raised. + * + * @param p_servant servant for which the object reference + * needs to be obtained. + * @return object reference associated with the servant. + * @exception WrongPolicy if the operation is not invoked + * in the context of executing a request on + * the specified servant and the required + * policies are not present. + * @exception ServantNotActive if the above specified + * policies and rules are not met. + */ + org.omg.CORBA.Object servant_to_reference (org.omg.PortableServer.Servant p_servant) throws org.omg.PortableServer.POAPackage.ServantNotActive, org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * If the POA has the RETAIN policy and the specified + * object is present in the Active Object Map, this + * operation returns the servant associated with that + * object in the Active Object Map. Otherwise, if the + * POA has the USE_DEFAULT_SERVANT policy and a default + * servant has been registered with the POA, this + * operation returns the default servant. If the object + * reference was not created by this POA, + * the WrongAdapter exception is raised. (OMG Issue + * on inconsistency with the POA.IDL. + * + * @param reference object reference for which the + * servant is returned. + * @return servant associated with the reference. + * @exception WrongPolicy if neither the RETAIN policy or + * the USE_DEFAULT_SERVANT policy is present. + * @exception ObjectNotActive if the servant is not + * present in the Active Object Map (for RETAIN) + * or no default servant is registered (for + * USE_DEFAULT_POLICY). + * @exception WrongAdapter if reference was not created by + * this POA instance. + */ + org.omg.PortableServer.Servant reference_to_servant (org.omg.CORBA.Object reference) throws org.omg.PortableServer.POAPackage.ObjectNotActive, org.omg.PortableServer.POAPackage.WrongPolicy, org.omg.PortableServer.POAPackage.WrongAdapter; + + /** + * This operation returns the Object Id value + * encapsulated by the specified reference. This + * operation is valid only if the reference was created + * by the POA on which the operation is being performed. + * The object denoted by the reference does not have + * to be active for this operation to succeed. + * + * @param reference the object reference from which the + * object id needs to be returned. + * @return object id encapsulated in the reference. + * @exception WrongAdapter if the reference was not + * created by the POA specified in the + * reference. + * @exception WrongPolicy declared to allow future + * extensions. + * + */ + byte[] reference_to_id (org.omg.CORBA.Object reference) throws org.omg.PortableServer.POAPackage.WrongAdapter, org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * If the POA has the RETAIN policy and the specified + * ObjectId is in the Active Object Map, this operation + * returns the servant associated with that object in + * the Active Object Map. Otherwise, if the POA has + * the USE_DEFAULT_SERVANT policy and a default servant + * has been registered with the POA, this operation + * returns the default servant. + * + * @param oid object id for the which the servant is + * returned. + * @return servant associated with oid. + * @exception ObjectNotActive is raised if ObjectId is + * is not in the Active Object Map (for RETAIN + * policy), or no default servant is registered + * (for USE_DEFAULT_SERVANT policy). + * + * @exception WrongPolicy is raised if the RETAIN policy + * or the USE_DEFAULT_SERVANT + * policy is not present. + */ + org.omg.PortableServer.Servant id_to_servant (byte[] oid) throws org.omg.PortableServer.POAPackage.ObjectNotActive, org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * If an object with the specified Object Id value is + * currently active, a reference encapsulating the + * information used to activate the object is returned. + * + * @param oid id of the object for which the + * reference is returned. + * @return the object reference + * + * @exception ObjectNotActive if the Object Id value + * is not active in the POA. + * @exception WrongPolicy if the RETAIN policy is not + * present. + */ + org.omg.CORBA.Object id_to_reference (byte[] oid) throws org.omg.PortableServer.POAPackage.ObjectNotActive, org.omg.PortableServer.POAPackage.WrongPolicy; + + /** + * This returns the unique id of the POA in the process in which it + * is created. It is for use by portable interceptors. + * <p> + * This id is guaranteed unique for the life span of the POA in the + * process. For persistent POAs, this means that if a POA is created + * in the same path with the same name as another POA, these POAs + * are identical and, therefore, have the same id. For transient + * POAs, each POA is unique. + */ + byte[] id (); +} // interface POAOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/AdapterAlreadyExists.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/AdapterAlreadyExists.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class AdapterAlreadyExists extends org.omg.CORBA.UserException +{ + + public AdapterAlreadyExists () + { + super(AdapterAlreadyExistsHelper.id()); + } // ctor + + + public AdapterAlreadyExists (String $reason) + { + super(AdapterAlreadyExistsHelper.id() + " " + $reason); + } // ctor + +} // class AdapterAlreadyExists
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/AdapterAlreadyExistsHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/AdapterAlreadyExistsHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class AdapterAlreadyExistsHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/AdapterAlreadyExists:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.AdapterAlreadyExists that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.AdapterAlreadyExists extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.AdapterAlreadyExistsHelper.id (), "AdapterAlreadyExists", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.AdapterAlreadyExists read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.AdapterAlreadyExists value = new org.omg.PortableServer.POAPackage.AdapterAlreadyExists (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.AdapterAlreadyExists value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/AdapterNonExistent.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/AdapterNonExistent.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class AdapterNonExistent extends org.omg.CORBA.UserException +{ + + public AdapterNonExistent () + { + super(AdapterNonExistentHelper.id()); + } // ctor + + + public AdapterNonExistent (String $reason) + { + super(AdapterNonExistentHelper.id() + " " + $reason); + } // ctor + +} // class AdapterNonExistent
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/AdapterNonExistentHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/AdapterNonExistentHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class AdapterNonExistentHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/AdapterNonExistent:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.AdapterNonExistent that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.AdapterNonExistent extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.AdapterNonExistentHelper.id (), "AdapterNonExistent", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.AdapterNonExistent read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.AdapterNonExistent value = new org.omg.PortableServer.POAPackage.AdapterNonExistent (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.AdapterNonExistent value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/InvalidPolicy.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,33 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/InvalidPolicy.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class InvalidPolicy extends org.omg.CORBA.UserException +{ + public short index = (short)0; + + public InvalidPolicy () + { + super(InvalidPolicyHelper.id()); + } // ctor + + public InvalidPolicy (short _index) + { + super(InvalidPolicyHelper.id()); + index = _index; + } // ctor + + + public InvalidPolicy (String $reason, short _index) + { + super(InvalidPolicyHelper.id() + " " + $reason); + index = _index; + } // ctor + +} // class InvalidPolicy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/InvalidPolicyHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,79 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/InvalidPolicyHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class InvalidPolicyHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/InvalidPolicy:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.InvalidPolicy that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.InvalidPolicy extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [1]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + _tcOf_members0 = org.omg.CORBA.ORB.init ().get_primitive_tc (org.omg.CORBA.TCKind.tk_ushort); + _members0[0] = new org.omg.CORBA.StructMember ( + "index", + _tcOf_members0, + null); + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.InvalidPolicyHelper.id (), "InvalidPolicy", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.InvalidPolicy read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.InvalidPolicy value = new org.omg.PortableServer.POAPackage.InvalidPolicy (); + // read and discard the repository ID + istream.read_string (); + value.index = istream.read_ushort (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.InvalidPolicy value) + { + // write the repository ID + ostream.write_string (id ()); + ostream.write_ushort (value.index); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/NoServant.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/NoServant.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class NoServant extends org.omg.CORBA.UserException +{ + + public NoServant () + { + super(NoServantHelper.id()); + } // ctor + + + public NoServant (String $reason) + { + super(NoServantHelper.id() + " " + $reason); + } // ctor + +} // class NoServant
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/NoServantHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/NoServantHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class NoServantHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/NoServant:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.NoServant that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.NoServant extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.NoServantHelper.id (), "NoServant", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.NoServant read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.NoServant value = new org.omg.PortableServer.POAPackage.NoServant (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.NoServant value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/ObjectAlreadyActive.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/ObjectAlreadyActive.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class ObjectAlreadyActive extends org.omg.CORBA.UserException +{ + + public ObjectAlreadyActive () + { + super(ObjectAlreadyActiveHelper.id()); + } // ctor + + + public ObjectAlreadyActive (String $reason) + { + super(ObjectAlreadyActiveHelper.id() + " " + $reason); + } // ctor + +} // class ObjectAlreadyActive
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/ObjectAlreadyActiveHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/ObjectAlreadyActiveHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class ObjectAlreadyActiveHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/ObjectAlreadyActive:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.ObjectAlreadyActive that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.ObjectAlreadyActive extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.ObjectAlreadyActiveHelper.id (), "ObjectAlreadyActive", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.ObjectAlreadyActive read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.ObjectAlreadyActive value = new org.omg.PortableServer.POAPackage.ObjectAlreadyActive (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.ObjectAlreadyActive value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/ObjectNotActive.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/ObjectNotActive.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class ObjectNotActive extends org.omg.CORBA.UserException +{ + + public ObjectNotActive () + { + super(ObjectNotActiveHelper.id()); + } // ctor + + + public ObjectNotActive (String $reason) + { + super(ObjectNotActiveHelper.id() + " " + $reason); + } // ctor + +} // class ObjectNotActive
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/ObjectNotActiveHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/ObjectNotActiveHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class ObjectNotActiveHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/ObjectNotActive:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.ObjectNotActive that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.ObjectNotActive extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.ObjectNotActiveHelper.id (), "ObjectNotActive", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.ObjectNotActive read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.ObjectNotActive value = new org.omg.PortableServer.POAPackage.ObjectNotActive (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.ObjectNotActive value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/ServantAlreadyActive.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/ServantAlreadyActive.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class ServantAlreadyActive extends org.omg.CORBA.UserException +{ + + public ServantAlreadyActive () + { + super(ServantAlreadyActiveHelper.id()); + } // ctor + + + public ServantAlreadyActive (String $reason) + { + super(ServantAlreadyActiveHelper.id() + " " + $reason); + } // ctor + +} // class ServantAlreadyActive
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/ServantAlreadyActiveHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/ServantAlreadyActiveHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class ServantAlreadyActiveHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/ServantAlreadyActive:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.ServantAlreadyActive that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.ServantAlreadyActive extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.ServantAlreadyActiveHelper.id (), "ServantAlreadyActive", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.ServantAlreadyActive read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.ServantAlreadyActive value = new org.omg.PortableServer.POAPackage.ServantAlreadyActive (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.ServantAlreadyActive value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/ServantNotActive.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/ServantNotActive.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class ServantNotActive extends org.omg.CORBA.UserException +{ + + public ServantNotActive () + { + super(ServantNotActiveHelper.id()); + } // ctor + + + public ServantNotActive (String $reason) + { + super(ServantNotActiveHelper.id() + " " + $reason); + } // ctor + +} // class ServantNotActive
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/ServantNotActiveHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/ServantNotActiveHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class ServantNotActiveHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/ServantNotActive:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.ServantNotActive that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.ServantNotActive extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.ServantNotActiveHelper.id (), "ServantNotActive", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.ServantNotActive read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.ServantNotActive value = new org.omg.PortableServer.POAPackage.ServantNotActive (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.ServantNotActive value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/WrongAdapter.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/WrongAdapter.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class WrongAdapter extends org.omg.CORBA.UserException +{ + + public WrongAdapter () + { + super(WrongAdapterHelper.id()); + } // ctor + + + public WrongAdapter (String $reason) + { + super(WrongAdapterHelper.id() + " " + $reason); + } // ctor + +} // class WrongAdapter
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/WrongAdapterHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/WrongAdapterHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class WrongAdapterHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/WrongAdapter:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.WrongAdapter that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.WrongAdapter extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.WrongAdapterHelper.id (), "WrongAdapter", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.WrongAdapter read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.WrongAdapter value = new org.omg.PortableServer.POAPackage.WrongAdapter (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.WrongAdapter value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/WrongPolicy.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/WrongPolicy.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public final class WrongPolicy extends org.omg.CORBA.UserException +{ + + public WrongPolicy () + { + super(WrongPolicyHelper.id()); + } // ctor + + + public WrongPolicy (String $reason) + { + super(WrongPolicyHelper.id() + " " + $reason); + } // ctor + +} // class WrongPolicy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/POAPackage/WrongPolicyHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,72 @@ +package org.omg.PortableServer.POAPackage; + + +/** +* org/omg/PortableServer/POAPackage/WrongPolicyHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +abstract public class WrongPolicyHelper +{ + private static String _id = "IDL:omg.org/PortableServer/POA/WrongPolicy:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.POAPackage.WrongPolicy that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.POAPackage.WrongPolicy extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + private static boolean __active = false; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + synchronized (org.omg.CORBA.TypeCode.class) + { + if (__typeCode == null) + { + if (__active) + { + return org.omg.CORBA.ORB.init().create_recursive_tc ( _id ); + } + __active = true; + org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0]; + org.omg.CORBA.TypeCode _tcOf_members0 = null; + __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.PortableServer.POAPackage.WrongPolicyHelper.id (), "WrongPolicy", _members0); + __active = false; + } + } + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.POAPackage.WrongPolicy read (org.omg.CORBA.portable.InputStream istream) + { + org.omg.PortableServer.POAPackage.WrongPolicy value = new org.omg.PortableServer.POAPackage.WrongPolicy (); + // read and discard the repository ID + istream.read_string (); + return value; + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.POAPackage.WrongPolicy value) + { + // write the repository ID + ostream.write_string (id ()); + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/REQUEST_PROCESSING_POLICY_ID.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/REQUEST_PROCESSING_POLICY_ID.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public interface REQUEST_PROCESSING_POLICY_ID +{ + + /** + * The value representing REQUEST_PROCESSING_POLICY_ID. + */ + public static final int value = (int)(22L); +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/RequestProcessingPolicy.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,19 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/RequestProcessingPolicy.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * This policy specifies how requests are processed by + * the created POA. The default is + * USE_ACTIVE_OBJECT_MAP_ONLY. + */ +public interface RequestProcessingPolicy extends RequestProcessingPolicyOperations, org.omg.CORBA.Policy, org.omg.CORBA.portable.IDLEntity +{ +} // interface RequestProcessingPolicy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/RequestProcessingPolicyOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,24 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/RequestProcessingPolicyOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * This policy specifies how requests are processed by + * the created POA. The default is + * USE_ACTIVE_OBJECT_MAP_ONLY. + */ +public interface RequestProcessingPolicyOperations extends org.omg.CORBA.PolicyOperations +{ + + /** + * specifies the policy value + */ + org.omg.PortableServer.RequestProcessingPolicyValue value (); +} // interface RequestProcessingPolicyOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/RequestProcessingPolicyValue.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,61 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/RequestProcessingPolicyValue.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The RequestProcessingPolicyValue can have the following + * values. USE_ACTIVE_OBJECT_MAP_ONLY - If the Object Id + * is not found in the Active Object Map, + * an OBJECT_NOT_EXIST exception is returned to the + * client. The RETAIN policy is also required. + * USE_DEFAULT_SERVANT - If the Object Id is not found in + * the Active Object Map or the NON_RETAIN policy is + * present, and a default servant has been registered + * with the POA using the set_servant operation, + * the request is dispatched to the default servant. + * USE_SERVANT_MANAGER - If the Object Id is not found + * in the Active Object Map or the NON_RETAIN policy + * is present, and a servant manager has been registered + * with the POA using the set_servant_manager operation, + * the servant manager is given the opportunity to + * locate a servant or raise an exception. + */ +public class RequestProcessingPolicyValue implements org.omg.CORBA.portable.IDLEntity +{ + private int __value; + private static int __size = 3; + private static org.omg.PortableServer.RequestProcessingPolicyValue[] __array = new org.omg.PortableServer.RequestProcessingPolicyValue [__size]; + + public static final int _USE_ACTIVE_OBJECT_MAP_ONLY = 0; + public static final org.omg.PortableServer.RequestProcessingPolicyValue USE_ACTIVE_OBJECT_MAP_ONLY = new org.omg.PortableServer.RequestProcessingPolicyValue(_USE_ACTIVE_OBJECT_MAP_ONLY); + public static final int _USE_DEFAULT_SERVANT = 1; + public static final org.omg.PortableServer.RequestProcessingPolicyValue USE_DEFAULT_SERVANT = new org.omg.PortableServer.RequestProcessingPolicyValue(_USE_DEFAULT_SERVANT); + public static final int _USE_SERVANT_MANAGER = 2; + public static final org.omg.PortableServer.RequestProcessingPolicyValue USE_SERVANT_MANAGER = new org.omg.PortableServer.RequestProcessingPolicyValue(_USE_SERVANT_MANAGER); + + public int value () + { + return __value; + } + + public static org.omg.PortableServer.RequestProcessingPolicyValue from_int (int value) + { + if (value >= 0 && value < __size) + return __array[value]; + else + throw new org.omg.CORBA.BAD_PARAM (); + } + + protected RequestProcessingPolicyValue (int value) + { + __value = value; + __array[__value] = this; + } +} // class RequestProcessingPolicyValue
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/SERVANT_RETENTION_POLICY_ID.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/SERVANT_RETENTION_POLICY_ID.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public interface SERVANT_RETENTION_POLICY_ID +{ + + /** + * The value representing SERVANT_RETENTION_POLICY_ID. + */ + public static final int value = (int)(21L); +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantActivator.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantActivator.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the RETAIN policy it uses servant + * managers that are ServantActivators. + */ +public interface ServantActivator extends ServantActivatorOperations, org.omg.PortableServer.ServantManager, org.omg.CORBA.portable.IDLEntity +{ +} // interface ServantActivator
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantActivatorHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,90 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantActivatorHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the RETAIN policy it uses servant + * managers that are ServantActivators. + */ +abstract public class ServantActivatorHelper +{ + private static String _id = "IDL:omg.org/PortableServer/ServantActivator:2.3"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.ServantActivator that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.ServantActivator extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + __typeCode = org.omg.CORBA.ORB.init ().create_interface_tc (org.omg.PortableServer.ServantActivatorHelper.id (), "ServantActivator"); + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.ServantActivator read (org.omg.CORBA.portable.InputStream istream) + { + throw new org.omg.CORBA.MARSHAL (); + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.ServantActivator value) + { + throw new org.omg.CORBA.MARSHAL (); + } + + public static org.omg.PortableServer.ServantActivator narrow (org.omg.CORBA.Object obj) + { + if (obj == null) + return null; + else if (obj instanceof org.omg.PortableServer.ServantActivator) + return (org.omg.PortableServer.ServantActivator)obj; + else if (!obj._is_a (id ())) + throw new org.omg.CORBA.BAD_PARAM (); + else + { + org.omg.CORBA.portable.Delegate delegate = ((org.omg.CORBA.portable.ObjectImpl)obj)._get_delegate (); + org.omg.PortableServer._ServantActivatorStub stub = new org.omg.PortableServer._ServantActivatorStub (); + stub._set_delegate(delegate); + return stub; + } + } + + public static org.omg.PortableServer.ServantActivator unchecked_narrow (org.omg.CORBA.Object obj) + { + if (obj == null) + return null; + else if (obj instanceof org.omg.PortableServer.ServantActivator) + return (org.omg.PortableServer.ServantActivator)obj; + else + { + org.omg.CORBA.portable.Delegate delegate = ((org.omg.CORBA.portable.ObjectImpl)obj)._get_delegate (); + org.omg.PortableServer._ServantActivatorStub stub = new org.omg.PortableServer._ServantActivatorStub (); + stub._set_delegate(delegate); + return stub; + } + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantActivatorOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,60 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantActivatorOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the RETAIN policy it uses servant + * managers that are ServantActivators. + */ +public interface ServantActivatorOperations extends org.omg.PortableServer.ServantManagerOperations +{ + + /** + * This operation is invoked by the POA whenever the + * POA receives a request for an object that is not + * currently active, assuming the POA has the + * USE_SERVANT_MANAGER and RETAIN policies. + * @param oid object Id associated with the object on + * the request was made. + * @param adapter object reference for the POA in which + * the object is being activated. + * @return Servant corresponding to oid is created or + * located by the user supplied servant manager. + * @exception ForwardRequest to indicate to the ORB + * that it is responsible for delivering + * the current request and subsequent + * requests to the object denoted in the + * forward_reference member of the exception. + */ + org.omg.PortableServer.Servant incarnate (byte[] oid, org.omg.PortableServer.POA adapter) throws org.omg.PortableServer.ForwardRequest; + + /** + * This operation is invoked whenever a servant for + * an object is deactivated, assuming the POA has + * the USE_SERVANT_MANAGER and RETAIN policies. + * @param oid object Id associated with the object + * being deactivated. + * @param adapter object reference for the POA in which + * the object was active. + * @param serv contains reference to the servant + * associated with the object being deactivated. + * @param cleanup_in_progress if TRUE indicates that + * destroy or deactivate is called with + * etherealize_objects param of TRUE. FALSE + * indicates that etherealize was called due to + * other reasons. + * @param remaining_activations indicates whether the + * Servant Manager can destroy a servant. If + * set to TRUE, the Servant Manager should wait + * until all invocations in progress have + * completed. + */ + void etherealize (byte[] oid, org.omg.PortableServer.POA adapter, org.omg.PortableServer.Servant serv, boolean cleanup_in_progress, boolean remaining_activations); +} // interface ServantActivatorOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantActivatorPOA.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,59 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantActivatorPOA.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the RETAIN policy it uses servant + * managers that are ServantActivators. + */ +public abstract class ServantActivatorPOA extends org.omg.PortableServer.Servant + implements org.omg.PortableServer.ServantActivatorOperations, org.omg.CORBA.portable.InvokeHandler +{ + + // Constructors + + private static java.util.Hashtable _methods = new java.util.Hashtable (); + static + { + _methods.put ("incarnate", new java.lang.Integer (0)); + _methods.put ("etherealize", new java.lang.Integer (1)); + } + + public org.omg.CORBA.portable.OutputStream _invoke (String $method, + org.omg.CORBA.portable.InputStream in, + org.omg.CORBA.portable.ResponseHandler $rh) + { + throw new org.omg.CORBA.BAD_OPERATION(); + } // _invoke + + // Type-specific CORBA::Object operations + private static String[] __ids = { + "IDL:omg.org/PortableServer/ServantActivator:2.3", + "IDL:omg.org/PortableServer/ServantManager:1.0"}; + + public String[] _all_interfaces (org.omg.PortableServer.POA poa, byte[] objectId) + { + return (String[])__ids.clone (); + } + + public ServantActivator _this() + { + return ServantActivatorHelper.narrow( + super._this_object()); + } + + public ServantActivator _this(org.omg.CORBA.ORB orb) + { + return ServantActivatorHelper.narrow( + super._this_object(orb)); + } + + +} // class ServantActivatorPOA
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantLocator.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,32 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantLocator.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the NON_RETAIN policy it uses servant + * managers that are ServantLocators. Because the POA + * knows that the servant returned by this servant + * manager will be used only for a single request, + * it can supply extra information to the servant + * manager's operations and the servant manager's pair + * of operations may be able to cooperate to do + * something different than a ServantActivator. + * When the POA uses the ServantLocator interface, + * immediately after performing the operation invocation + * on the servant returned by preinvoke, the POA will + * invoke postinvoke on the servant manager, passing the + * ObjectId value and the Servant value as parameters + * (among others). This feature may be used to force + * every request for objects associated with a POA to + * be mediated by the servant manager. + */ +public interface ServantLocator extends ServantLocatorOperations, org.omg.PortableServer.ServantManager, org.omg.CORBA.portable.IDLEntity +{ +} // interface ServantLocator
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantLocatorHelper.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,104 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantLocatorHelper.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the NON_RETAIN policy it uses servant + * managers that are ServantLocators. Because the POA + * knows that the servant returned by this servant + * manager will be used only for a single request, + * it can supply extra information to the servant + * manager's operations and the servant manager's pair + * of operations may be able to cooperate to do + * something different than a ServantActivator. + * When the POA uses the ServantLocator interface, + * immediately after performing the operation invocation + * on the servant returned by preinvoke, the POA will + * invoke postinvoke on the servant manager, passing the + * ObjectId value and the Servant value as parameters + * (among others). This feature may be used to force + * every request for objects associated with a POA to + * be mediated by the servant manager. + */ +abstract public class ServantLocatorHelper +{ + private static String _id = "IDL:omg.org/PortableServer/ServantLocator:1.0"; + + public static void insert (org.omg.CORBA.Any a, org.omg.PortableServer.ServantLocator that) + { + org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); + a.type (type ()); + write (out, that); + a.read_value (out.create_input_stream (), type ()); + } + + public static org.omg.PortableServer.ServantLocator extract (org.omg.CORBA.Any a) + { + return read (a.create_input_stream ()); + } + + private static org.omg.CORBA.TypeCode __typeCode = null; + synchronized public static org.omg.CORBA.TypeCode type () + { + if (__typeCode == null) + { + __typeCode = org.omg.CORBA.ORB.init ().create_interface_tc (org.omg.PortableServer.ServantLocatorHelper.id (), "ServantLocator"); + } + return __typeCode; + } + + public static String id () + { + return _id; + } + + public static org.omg.PortableServer.ServantLocator read (org.omg.CORBA.portable.InputStream istream) + { + throw new org.omg.CORBA.MARSHAL (); + } + + public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.PortableServer.ServantLocator value) + { + throw new org.omg.CORBA.MARSHAL (); + } + + public static org.omg.PortableServer.ServantLocator narrow (org.omg.CORBA.Object obj) + { + if (obj == null) + return null; + else if (obj instanceof org.omg.PortableServer.ServantLocator) + return (org.omg.PortableServer.ServantLocator)obj; + else if (!obj._is_a (id ())) + throw new org.omg.CORBA.BAD_PARAM (); + else + { + org.omg.CORBA.portable.Delegate delegate = ((org.omg.CORBA.portable.ObjectImpl)obj)._get_delegate (); + org.omg.PortableServer._ServantLocatorStub stub = new org.omg.PortableServer._ServantLocatorStub (); + stub._set_delegate(delegate); + return stub; + } + } + + public static org.omg.PortableServer.ServantLocator unchecked_narrow (org.omg.CORBA.Object obj) + { + if (obj == null) + return null; + else if (obj instanceof org.omg.PortableServer.ServantLocator) + return (org.omg.PortableServer.ServantLocator)obj; + else + { + org.omg.CORBA.portable.Delegate delegate = ((org.omg.CORBA.portable.ObjectImpl)obj)._get_delegate (); + org.omg.PortableServer._ServantLocatorStub stub = new org.omg.PortableServer._ServantLocatorStub (); + stub._set_delegate(delegate); + return stub; + } + } + +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantLocatorOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,67 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantLocatorOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the NON_RETAIN policy it uses servant + * managers that are ServantLocators. Because the POA + * knows that the servant returned by this servant + * manager will be used only for a single request, + * it can supply extra information to the servant + * manager's operations and the servant manager's pair + * of operations may be able to cooperate to do + * something different than a ServantActivator. + * When the POA uses the ServantLocator interface, + * immediately after performing the operation invocation + * on the servant returned by preinvoke, the POA will + * invoke postinvoke on the servant manager, passing the + * ObjectId value and the Servant value as parameters + * (among others). This feature may be used to force + * every request for objects associated with a POA to + * be mediated by the servant manager. + */ +public interface ServantLocatorOperations extends org.omg.PortableServer.ServantManagerOperations +{ + + /** + * This operations is used to get a servant that will be + * used to process the request that caused preinvoke to + * be called. + * @param oid the object id associated with object on + * which the request was made. + * @param adapter the reference for POA in which the + * object is being activated. + * @param operation the operation name. + * @param the_cookie an opaque value that can be set + * by the servant manager to be used + * during postinvoke. + * @return Servant used to process incoming request. + * @exception ForwardRequest to indicate to the ORB + * that it is responsible for delivering + * the current request and subsequent + * requests to the object denoted in the + * forward_reference member of the exception. + */ + org.omg.PortableServer.Servant preinvoke (byte[] oid, org.omg.PortableServer.POA adapter, String operation, org.omg.PortableServer.ServantLocatorPackage.CookieHolder the_cookie) throws org.omg.PortableServer.ForwardRequest; + + /** + * This operation is invoked whenener a servant completes + * a request. + * @param oid the object id ssociated with object on which + * the request was made. + * @param adapter the reference for POA in which the + * object was active. + * @param the_cookie an opaque value that contains + * the data set by preinvoke. + * @param the_servant reference to the servant that is + * associated with the object. + */ + void postinvoke (byte[] oid, org.omg.PortableServer.POA adapter, String operation, java.lang.Object the_cookie, org.omg.PortableServer.Servant the_servant); +} // interface ServantLocatorOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantLocatorPOA.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,73 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantLocatorPOA.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the NON_RETAIN policy it uses servant + * managers that are ServantLocators. Because the POA + * knows that the servant returned by this servant + * manager will be used only for a single request, + * it can supply extra information to the servant + * manager's operations and the servant manager's pair + * of operations may be able to cooperate to do + * something different than a ServantActivator. + * When the POA uses the ServantLocator interface, + * immediately after performing the operation invocation + * on the servant returned by preinvoke, the POA will + * invoke postinvoke on the servant manager, passing the + * ObjectId value and the Servant value as parameters + * (among others). This feature may be used to force + * every request for objects associated with a POA to + * be mediated by the servant manager. + */ +public abstract class ServantLocatorPOA extends org.omg.PortableServer.Servant + implements org.omg.PortableServer.ServantLocatorOperations, org.omg.CORBA.portable.InvokeHandler +{ + + // Constructors + + private static java.util.Hashtable _methods = new java.util.Hashtable (); + static + { + _methods.put ("preinvoke", new java.lang.Integer (0)); + _methods.put ("postinvoke", new java.lang.Integer (1)); + } + + public org.omg.CORBA.portable.OutputStream _invoke (String $method, + org.omg.CORBA.portable.InputStream in, + org.omg.CORBA.portable.ResponseHandler $rh) + { + throw new org.omg.CORBA.BAD_OPERATION(); + } // _invoke + + // Type-specific CORBA::Object operations + private static String[] __ids = { + "IDL:omg.org/PortableServer/ServantLocator:1.0", + "IDL:omg.org/PortableServer/ServantManager:1.0"}; + + public String[] _all_interfaces (org.omg.PortableServer.POA poa, byte[] objectId) + { + return (String[])__ids.clone (); + } + + public ServantLocator _this() + { + return ServantLocatorHelper.narrow( + super._this_object()); + } + + public ServantLocator _this(org.omg.CORBA.ORB orb) + { + return ServantLocatorHelper.narrow( + super._this_object(orb)); + } + + +} // class ServantLocatorPOA
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantManager.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantManager.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * A servant manager supplies a POA with the ability + * to activate objects on demand when the POA receives + * a request targeted at an inactive object. A servant + * manager is registered with a POA as a callback object, + * to be invoked by the POA when necessary. + * ServantManagers can either be ServantActivators or + * ServantLocators. A ServantManager object must be + * local to the process containing the POA objects + * it is registered with. + */ +public interface ServantManager extends ServantManagerOperations, org.omg.CORBA.Object, org.omg.CORBA.portable.IDLEntity +{ +} // interface ServantManager
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantManagerOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,25 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantManagerOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * A servant manager supplies a POA with the ability + * to activate objects on demand when the POA receives + * a request targeted at an inactive object. A servant + * manager is registered with a POA as a callback object, + * to be invoked by the POA when necessary. + * ServantManagers can either be ServantActivators or + * ServantLocators. A ServantManager object must be + * local to the process containing the POA objects + * it is registered with. + */ +public interface ServantManagerOperations +{ +} // interface ServantManagerOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantRetentionPolicy.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantRetentionPolicy.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * This policy specifies whether the created POA retains + * active servants in an Active Object Map. + */ +public interface ServantRetentionPolicy extends ServantRetentionPolicyOperations, org.omg.CORBA.Policy, org.omg.CORBA.portable.IDLEntity +{ +} // interface ServantRetentionPolicy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantRetentionPolicyOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,23 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantRetentionPolicyOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * This policy specifies whether the created POA retains + * active servants in an Active Object Map. + */ +public interface ServantRetentionPolicyOperations extends org.omg.CORBA.PolicyOperations +{ + + /** + * specifies the policy value + */ + org.omg.PortableServer.ServantRetentionPolicyValue value (); +} // interface ServantRetentionPolicyOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ServantRetentionPolicyValue.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,49 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ServantRetentionPolicyValue.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * ServantRetentionPolicyValue can have the following + * values. RETAIN - to indicate that the POA will retain + * active servants in its Active Object Map. + * NON_RETAIN - to indicate Servants are not retained by + * the POA. If no ServantRetentionPolicy is specified at + * POA creation, the default is RETAIN. + */ +public class ServantRetentionPolicyValue implements org.omg.CORBA.portable.IDLEntity +{ + private int __value; + private static int __size = 2; + private static org.omg.PortableServer.ServantRetentionPolicyValue[] __array = new org.omg.PortableServer.ServantRetentionPolicyValue [__size]; + + public static final int _RETAIN = 0; + public static final org.omg.PortableServer.ServantRetentionPolicyValue RETAIN = new org.omg.PortableServer.ServantRetentionPolicyValue(_RETAIN); + public static final int _NON_RETAIN = 1; + public static final org.omg.PortableServer.ServantRetentionPolicyValue NON_RETAIN = new org.omg.PortableServer.ServantRetentionPolicyValue(_NON_RETAIN); + + public int value () + { + return __value; + } + + public static org.omg.PortableServer.ServantRetentionPolicyValue from_int (int value) + { + if (value >= 0 && value < __size) + return __array[value]; + else + throw new org.omg.CORBA.BAD_PARAM (); + } + + protected ServantRetentionPolicyValue (int value) + { + __value = value; + __array[__value] = this; + } +} // class ServantRetentionPolicyValue
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/THREAD_POLICY_ID.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,18 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/THREAD_POLICY_ID.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + +public interface THREAD_POLICY_ID +{ + + /** + * The value representing THREAD_POLICY_ID. + */ + public static final int value = (int)(16L); +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ThreadPolicy.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,19 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ThreadPolicy.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The ThreadPolicy specifies the threading model + * used with the created POA. The default is + * ORB_CTRL_MODEL. + */ +public interface ThreadPolicy extends ThreadPolicyOperations, org.omg.CORBA.Policy, org.omg.CORBA.portable.IDLEntity +{ +} // interface ThreadPolicy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ThreadPolicyOperations.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,24 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ThreadPolicyOperations.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The ThreadPolicy specifies the threading model + * used with the created POA. The default is + * ORB_CTRL_MODEL. + */ +public interface ThreadPolicyOperations extends org.omg.CORBA.PolicyOperations +{ + + /** + * specifies the policy value + */ + org.omg.PortableServer.ThreadPolicyValue value (); +} // interface ThreadPolicyOperations
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/ThreadPolicyValue.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,48 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/ThreadPolicyValue.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * The ThreadPolicyValue can have the following values. + * ORB_CTRL_MODEL - The ORB is responsible for assigning + * requests for an ORB- controlled POA to threads. + * SINGLE_THREAD_MODEL - Requests for a single-threaded + * POA are processed sequentially. + */ +public class ThreadPolicyValue implements org.omg.CORBA.portable.IDLEntity +{ + private int __value; + private static int __size = 2; + private static org.omg.PortableServer.ThreadPolicyValue[] __array = new org.omg.PortableServer.ThreadPolicyValue [__size]; + + public static final int _ORB_CTRL_MODEL = 0; + public static final org.omg.PortableServer.ThreadPolicyValue ORB_CTRL_MODEL = new org.omg.PortableServer.ThreadPolicyValue(_ORB_CTRL_MODEL); + public static final int _SINGLE_THREAD_MODEL = 1; + public static final org.omg.PortableServer.ThreadPolicyValue SINGLE_THREAD_MODEL = new org.omg.PortableServer.ThreadPolicyValue(_SINGLE_THREAD_MODEL); + + public int value () + { + return __value; + } + + public static org.omg.PortableServer.ThreadPolicyValue from_int (int value) + { + if (value >= 0 && value < __size) + return __array[value]; + else + throw new org.omg.CORBA.BAD_PARAM (); + } + + protected ThreadPolicyValue (int value) + { + __value = value; + __array[__value] = this; + } +} // class ThreadPolicyValue
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/_ServantActivatorStub.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,112 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/_ServantActivatorStub.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the RETAIN policy it uses servant + * managers that are ServantActivators. + */ +public class _ServantActivatorStub extends org.omg.CORBA.portable.ObjectImpl implements org.omg.PortableServer.ServantActivator +{ + final public static java.lang.Class _opsClass = ServantActivatorOperations.class; + + + + /** + * This operation is invoked by the POA whenever the + * POA receives a request for an object that is not + * currently active, assuming the POA has the + * USE_SERVANT_MANAGER and RETAIN policies. + * @param oid object Id associated with the object on + * the request was made. + * @param adapter object reference for the POA in which + * the object is being activated. + * @return Servant corresponding to oid is created or + * located by the user supplied servant manager. + * @exception ForwardRequest to indicate to the ORB + * that it is responsible for delivering + * the current request and subsequent + * requests to the object denoted in the + * forward_reference member of the exception. + */ + public org.omg.PortableServer.Servant incarnate (byte[] oid, org.omg.PortableServer.POA adapter) throws org.omg.PortableServer.ForwardRequest + { + org.omg.CORBA.portable.ServantObject $so = _servant_preinvoke ("incarnate", _opsClass); + ServantActivatorOperations $self = (ServantActivatorOperations) $so.servant; + + try { + return $self.incarnate (oid, adapter); + } finally { + _servant_postinvoke ($so); + } + } // incarnate + + + /** + * This operation is invoked whenever a servant for + * an object is deactivated, assuming the POA has + * the USE_SERVANT_MANAGER and RETAIN policies. + * @param oid object Id associated with the object + * being deactivated. + * @param adapter object reference for the POA in which + * the object was active. + * @param serv contains reference to the servant + * associated with the object being deactivated. + * @param cleanup_in_progress if TRUE indicates that + * destroy or deactivate is called with + * etherealize_objects param of TRUE. FALSE + * indicates that etherealize was called due to + * other reasons. + * @param remaining_activations indicates whether the + * Servant Manager can destroy a servant. If + * set to TRUE, the Servant Manager should wait + * until all invocations in progress have + * completed. + */ + public void etherealize (byte[] oid, org.omg.PortableServer.POA adapter, org.omg.PortableServer.Servant serv, boolean cleanup_in_progress, boolean remaining_activations) + { + org.omg.CORBA.portable.ServantObject $so = _servant_preinvoke ("etherealize", _opsClass); + ServantActivatorOperations $self = (ServantActivatorOperations) $so.servant; + + try { + $self.etherealize (oid, adapter, serv, cleanup_in_progress, remaining_activations); + } finally { + _servant_postinvoke ($so); + } + } // etherealize + + // Type-specific CORBA::Object operations + private static String[] __ids = { + "IDL:omg.org/PortableServer/ServantActivator:2.3", + "IDL:omg.org/PortableServer/ServantManager:1.0"}; + + public String[] _ids () + { + return (String[])__ids.clone (); + } + + private void readObject (java.io.ObjectInputStream s) throws java.io.IOException + { + String str = s.readUTF (); + String[] args = null; + java.util.Properties props = null; + org.omg.CORBA.Object obj = org.omg.CORBA.ORB.init (args, props).string_to_object (str); + org.omg.CORBA.portable.Delegate delegate = ((org.omg.CORBA.portable.ObjectImpl) obj)._get_delegate (); + _set_delegate (delegate); + } + + private void writeObject (java.io.ObjectOutputStream s) throws java.io.IOException + { + String[] args = null; + java.util.Properties props = null; + String str = org.omg.CORBA.ORB.init (args, props).object_to_string (this); + s.writeUTF (str); + } +} // class _ServantActivatorStub
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/generated/org/omg/PortableServer/_ServantLocatorStub.java Wed Nov 07 17:29:12 2007 -0500 @@ -0,0 +1,119 @@ +package org.omg.PortableServer; + + +/** +* org/omg/PortableServer/_ServantLocatorStub.java . +* Generated by the IDL-to-Java compiler (portable), version "3.2" +* from ../../../../src/share/classes/org/omg/PortableServer/poa.idl +* Wednesday, November 7, 2007 1:15:49 PM EST +*/ + + +/** + * When the POA has the NON_RETAIN policy it uses servant + * managers that are ServantLocators. Because the POA + * knows that the servant returned by this servant + * manager will be used only for a single request, + * it can supply extra information to the servant + * manager's operations and the servant manager's pair + * of operations may be able to cooperate to do + * something different than a ServantActivator. + * When the POA uses the ServantLocator interface, + * immediately after performing the operation invocation + * on the servant returned by preinvoke, the POA will + * invoke postinvoke on the servant manager, passing the + * ObjectId value and the Servant value as parameters + * (among others). This feature may be used to force + * every request for objects associated with a POA to + * be mediated by the servant manager. + */ +public class _ServantLocatorStub extends org.omg.CORBA.portable.ObjectImpl implements org.omg.PortableServer.ServantLocator +{ + final public static java.lang.Class _opsClass = ServantLocatorOperations.class; + + + + /** + * This operations is used to get a servant that will be + * used to process the request that caused preinvoke to + * be called. + * @param oid the object id associated with object on + * which the request was made. + * @param adapter the reference for POA in which the + * object is being activated. + * @param operation the operation name. + * @param the_cookie an opaque value that can be set + * by the servant manager to be used + * during postinvoke. + * @return Servant used to process incoming request. + * @exception ForwardRequest to indicate to the ORB + * that it is responsible for delivering + * the current request and subsequent + * requests to the object denoted in the + * forward_reference member of the exception. + */ + public org.omg.PortableServer.Servant preinvoke (byte[] oid, org.omg.PortableServer.POA adapter, String operation, org.omg.PortableServer.ServantLocatorPackage.CookieHolder the_cookie) throws org.omg.PortableServer.ForwardRequest + { + org.omg.CORBA.portable.ServantObject $so = _servant_preinvoke ("preinvoke", _opsClass); + ServantLocatorOperations $self = (ServantLocatorOperations) $so.servant; + + try { + return $self.preinvoke (oid, adapter, operation, the_cookie); + } finally { + _servant_postinvoke ($so); + } + } // preinvoke + + + /** + * This operation is invoked whenener a servant completes + * a request. + * @param oid the object id ssociated with object on which + * the request was made. + * @param adapter the reference for POA in which the + * object was active. + * @param the_cookie an opaque value that contains + * the data set by preinvoke. + * @param the_servant reference to the servant that is + * associated with the object. + */ + public void postinvoke (byte[] oid, org.omg.PortableServer.POA adapter, String operation, java.lang.Object the_cookie, org.omg.PortableServer.Servant the_servant) + { + org.omg.CORBA.portable.ServantObject $so = _servant_preinvoke ("postinvoke", _opsClass); + ServantLocatorOperations $self = (ServantLocatorOperations) $so.servant; + + try { + $self.postinvoke (oid, adapter, operation, the_cookie, the_servant); + } finally { + _servant_postinvoke ($so); + } + } // postinvoke + + // Type-specific CORBA::Object operations + private static String[] __ids = { + "IDL:omg.org/PortableServer/ServantLocator:1.0", + "IDL:omg.org/PortableServer/ServantManager:1.0"}; + + public String[] _ids () + { + return (String[])__ids.clone (); + } + + private void readObject (java.io.ObjectInputStream s) throws java.io.IOException + { + String str = s.readUTF (); + String[] args = null; + java.util.Properties props = null; + org.omg.CORBA.Object obj = org.omg.CORBA.ORB.init (args, props).string_to_object (str); + org.omg.CORBA.portable.Delegate delegate = ((org.omg.CORBA.portable.ObjectImpl) obj)._get_delegate (); + _set_delegate (delegate); + } + + private void writeObject (java.io.ObjectOutputStream s) throws java.io.IOException + { + String[] args = null; + java.util.Properties props = null; + String str = org.omg.CORBA.ORB.init (args, props).object_to_string (this); + s.writeUTF (str); + } +} // class _ServantLocatorStub