15f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes/* 25f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * Licensed to the Apache Software Foundation (ASF) under one or more 35f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * contributor license agreements. See the NOTICE file distributed with 45f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * this work for additional information regarding copyright ownership. 55f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * The ASF licenses this file to You under the Apache License, Version 2.0 65f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * (the "License"); you may not use this file except in compliance with 75f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * the License. You may obtain a copy of the License at 85f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * 95f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * http://www.apache.org/licenses/LICENSE-2.0 105f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * 115f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * Unless required by applicable law or agreed to in writing, software 125f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * distributed under the License is distributed on an "AS IS" BASIS, 135f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 145f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * 155f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * See the License for the specific language governing permissions and 165f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * limitations under the License. 175f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes */ 185f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 195f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes/** 205f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * @author Aleksey V. Yantsen 215f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes */ 225f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 235f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes/** 245f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * Created on 12.23.2004 255f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes */ 265f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughespackage org.apache.harmony.jpda.tests.framework.jdwp; 275f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 285f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughesimport org.apache.harmony.jpda.tests.framework.TestErrorException; 295f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 305f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes/** 315f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * This class provides types length for VM-independent and VM-dependent types. 325f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes */ 335f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughespublic class TypesLengths { 345f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 355f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes // Type IDs 365f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte BYTE_ID = 1; 375f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 385f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte BOOLEAN_ID = 2; 395f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 405f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte INT_ID = 3; 415f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 425f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte LONG_ID = 4; 435f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 445f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte SHORT_ID = 5; 455f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 465f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte FLOAT_ID = 6; 475f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 485f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte DOUBLE_ID = 7; 495f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 505f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte VOID_ID = 8; 515f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 525f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte OBJECT_ID = 9; 535f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 545f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte ARRAY_ID = 10; 555f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 565f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte STRING_ID = 11; 575f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 585f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte THREAD_ID = 12; 595f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 605f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte THREADGROUP_ID = 13; 615f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 625f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte METHOD_ID = 14; 635f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 645f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte FIELD_ID = 15; 655f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 665f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte FRAME_ID = 16; 675f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 685f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte LOCATION_ID = 17; 695f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 705f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte REFERENCE_TYPE_ID = 18; 715f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 725f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte CLASS_ID = 19; 735f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 745f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte CLASSLOADER_ID = 20; 755f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 765f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte CLASSOBJECT_ID = 21; 775f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 785f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static final byte CHAR_ID = 22; 795f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 805f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes // Type lengths in bytes (VM-independent) 815f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 825f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int byteLength = 1; 835f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 845f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int booleanLength = 1; 855f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 865f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int intLength = 4; 875f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 885f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int longLength = 8; 895f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 905f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int shortLength = 2; 915f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 925f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int floatLength = 4; 935f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 945f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int doubleLength = 8; 955f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 965f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int voidLength = 0; 975f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 985f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int charLength = 2; 995f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1005f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes // Type lengths in bytes (VM-dependent) 1015f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1025f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int objectLength; 1035f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1045f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int arrayLength; 1055f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1065f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int stringLength; 1075f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1085f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int threadLength; 1095f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1105f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int threadGroupLength; 1115f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1125f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int methodLength; 1135f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1145f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int fieldLength; 1155f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1165f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int frameLength; 1175f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1185f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int locationLength; 1195f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1205f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int referenceLength; 1215f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1225f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int classLength; 1235f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1245f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int classLoaderLength; 1255f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1265f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes private static int classObjectLength; 1275f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 1285f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes /** 1295f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * Gets types length for type ID. 1305f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * 1315f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * @param typeID 1325f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * Type ID 1335f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * @return type length 1345f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes */ 1355f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static int getTypeLength(byte typeID) throws TestErrorException { 1365f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes switch (typeID) { 1375f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case BYTE_ID: { 1385f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return byteLength; 1395f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1405f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case BOOLEAN_ID: { 1415f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return booleanLength; 1425f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1435f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case INT_ID: { 1445f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return intLength; 1455f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1465f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case LONG_ID: { 1475f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return longLength; 1485f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1495f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case SHORT_ID: { 1505f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return shortLength; 1515f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1525f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case FLOAT_ID: { 1535f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return floatLength; 1545f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1555f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case DOUBLE_ID: { 1565f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return doubleLength; 1575f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1585f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case VOID_ID: { 1595f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return voidLength; 1605f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1615f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case OBJECT_ID: { 1625f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return objectLength; 1635f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1645f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case ARRAY_ID: { 1655f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return arrayLength; 1665f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1675f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case STRING_ID: { 1685f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return stringLength; 1695f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1705f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case THREAD_ID: { 1715f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return threadLength; 1725f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1735f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case THREADGROUP_ID: { 1745f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return threadGroupLength; 1755f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1765f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case METHOD_ID: { 1775f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return methodLength; 1785f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1795f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case FIELD_ID: { 1805f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return fieldLength; 1815f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1825f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case FRAME_ID: { 1835f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return frameLength; 1845f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1855f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case LOCATION_ID: { 1865f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return locationLength; 1875f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1885f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case REFERENCE_TYPE_ID: { 1895f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return referenceLength; 1905f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1915f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case CLASS_ID: { 1925f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return classLength; 1935f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1945f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case CLASSLOADER_ID: { 1955f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return classLoaderLength; 1965f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 1975f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case CLASSOBJECT_ID: { 1985f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return classObjectLength; 1995f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2005f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case CHAR_ID: { 2015f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return charLength; 2025f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2035f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes default: 2045f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes throw new TestErrorException("Unexpected type ID: " + typeID); 2055f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2065f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2075f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes 2085f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes /** 2095f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * Sets types length for type ID 2105f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * 2115f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * @param typeID Type ID 2125f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes * @param typeLength type length 2135f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes */ 2145f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes public static void setTypeLength(byte typeID, int typeLength) 2155f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes throws TestErrorException { 2165f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes switch (typeID) { 2175f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case BYTE_ID: { 2185f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes byteLength = typeLength; 2195f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2205f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2215f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case BOOLEAN_ID: { 2225f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes booleanLength = typeLength; 2235f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2245f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2255f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case INT_ID: { 2265f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes intLength = typeLength; 2275f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2285f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2295f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case LONG_ID: { 2305f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes longLength = typeLength; 2315f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2325f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2335f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case SHORT_ID: { 2345f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes shortLength = typeLength; 2355f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2365f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2375f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case FLOAT_ID: { 2385f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes floatLength = typeLength; 2395f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2405f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2415f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case DOUBLE_ID: { 2425f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes doubleLength = typeLength; 2435f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2445f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2455f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case VOID_ID: { 2465f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes voidLength = typeLength; 2475f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2485f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2495f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case OBJECT_ID: { 2505f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes objectLength = typeLength; 2515f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2525f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2535f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case ARRAY_ID: { 2545f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes arrayLength = typeLength; 2555f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2565f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2575f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case STRING_ID: { 2585f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes stringLength = typeLength; 2595f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2605f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2615f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case THREAD_ID: { 2625f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes threadLength = typeLength; 2635f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2645f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2655f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case THREADGROUP_ID: { 2665f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes threadGroupLength = typeLength; 2675f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2685f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2695f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case METHOD_ID: { 2705f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes methodLength = typeLength; 2715f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2725f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2735f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case FIELD_ID: { 2745f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes fieldLength = typeLength; 2755f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2765f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2775f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case FRAME_ID: { 2785f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes frameLength = typeLength; 2795f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2805f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2815f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case LOCATION_ID: { 2825f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes locationLength = typeLength; 2835f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2845f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2855f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case REFERENCE_TYPE_ID: { 2865f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes referenceLength = typeLength; 2875f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2885f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2895f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case CLASS_ID: { 2905f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes classLength = typeLength; 2915f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2925f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2935f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case CLASSLOADER_ID: { 2945f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes classLoaderLength = typeLength; 2955f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 2965f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 2975f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case CLASSOBJECT_ID: { 2985f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes classObjectLength = typeLength; 2995f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 3005f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 3015f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes case CHAR_ID: { 3025f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes classObjectLength = charLength; 3035f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes return; 3045f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 3055f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes default: 3065f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes throw new TestErrorException("Unexpected type ID: " + typeID); 3075f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 3085f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes } 3095f0a23683aa603d8c50b6dd071a565821b76067bElliott Hughes} 310