/* * JBoss, Home of Professional Open Source * Copyright 2009 Red Hat Inc. and/or its affiliates and other * contributors as indicated by the @author tags. All rights reserved. * See the copyright.txt in the distribution for a full listing of * individual contributors. * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This software 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this software; if not, write to the Free * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ package org.infinispan.marshall; /** * Indexes for object types. These are currently limited to being unsigned ints, so valid values are considered those * in the range of 0 to 254. Please note that the use of 255 is forbidden since this is reserved for foreign, or user * defined, externalizers. * * @author Galder ZamarreƱo * @author Pedro Ruivo * @author Sebastiano Peluso * @since 4.0 */ public interface Ids { // No internal externalizer should use this upper limit Id or anything higher than that. int MAX_ID = 255; int ARRAY_LIST = 0; int LINKED_LIST = 1; int MAPS = 2; int JDK_SETS = 3; int SINGLETON_LIST = 4; // responses int SUCCESSFUL_RESPONSE = 5; int EXTENDED_RESPONSE = 6; int EXCEPTION_RESPONSE = 7; int UNSUCCESSFUL_RESPONSE = 8; int REQUEST_IGNORED_RESPONSE = 9; // entries and values int IMMORTAL_ENTRY = 10; int MORTAL_ENTRY = 11; int TRANSIENT_ENTRY = 12; int TRANSIENT_MORTAL_ENTRY = 13; int IMMORTAL_VALUE = 14; int MORTAL_VALUE = 15; int TRANSIENT_VALUE = 16; int TRANSIENT_MORTAL_VALUE = 17; // internal collections (id=18 no longer in use, might get reused at a later stage) int IMMUTABLE_MAP = 19; int ATOMIC_HASH_MAP = 20; // others int GLOBAL_TRANSACTION = 38; int JGROUPS_ADDRESS = 39; int MARSHALLED_VALUE = 40; int TRANSACTION_LOG_ENTRY = 41; int BUCKET = 42; int DEADLOCK_DETECTING_GLOBAL_TRANSACTION = 43; // 44 and 45 no longer in use, used to belong to tree module int ATOMIC_HASH_MAP_DELTA = 46; int ATOMIC_PUT_OPERATION = 47; int ATOMIC_REMOVE_OPERATION = 48; int ATOMIC_CLEAR_OPERATION = 49; int DEFAULT_CONSISTENT_HASH = 51; int UNION_CONSISTENT_HASH = 52; int UNSURE_RESPONSE = 54; // 55 - 56 no longer in use since server modules can now register their own externalizers int BYTE_ARRAY_KEY = 57; // 58 - 59 no longer in use since server modules can now register their own externalizers int JGROUPS_TOPOLOGY_AWARE_ADDRESS = 60; int TOPOLOGY_AWARE_CH = 61; // commands (ids between 21 and 37 both inclusive and 50 and 53, are no longer in use, might get reused at a later stage) int REPLICABLE_COMMAND = 62; int REMOTE_TX_LOG_DETAILS = 63; int XID = 66; int XID_DEADLOCK_DETECTING_GLOBAL_TRANSACTION = 67; int XID_GLOBAL_TRANSACTION = 68; int IN_DOUBT_TX_INFO = 70; int MURMURHASH_2 = 71; int MURMURHASH_2_COMPAT = 72; int MURMURHASH_3 = 73; int CACHE_RPC_COMMAND = 74; int CACHE_VIEW = 75; // Versioned entries and values int VERSIONED_IMMORTAL_ENTRY = 76; int VERSIONED_MORTAL_ENTRY = 77; int VERSIONED_TRANSIENT_ENTRY = 78; int VERSIONED_TRANSIENT_MORTAL_ENTRY = 79; int VERSIONED_IMMORTAL_VALUE = 80; int VERSIONED_MORTAL_VALUE = 81; int VERSIONED_TRANSIENT_VALUE = 82; int VERSIONED_TRANSIENT_MORTAL_VALUE = 83; int LOCK_INFO = 84; //GMU int INTERNAL_GMU_NULL_ENTRY = 85; int INTERNAL_GMU_NULL_VALUE = 86; int INTERNAL_GMU_ENTRY = 87; int INTERNAL_GMU_VALUE = 88; int GMU_REPLICATED_VERSION = 89; int GMU_DISTRIBUTED_VERSION = 90; int GMU_CACHE_VERSION = 91; }