001    package org.apache.ojb.broker.metadata;
002    
003    /* Copyright 2002-2005 The Apache Software Foundation
004     *
005     * Licensed under the Apache License, Version 2.0 (the "License");
006     * you may not use this file except in compliance with the License.
007     * You may obtain a copy of the License at
008     *
009     *     http://www.apache.org/licenses/LICENSE-2.0
010     *
011     * Unless required by applicable law or agreed to in writing, software
012     * distributed under the License is distributed on an "AS IS" BASIS,
013     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014     * See the License for the specific language governing permissions and
015     * limitations under the License.
016     */
017    
018    /**
019     * This interface contains integer constants representing the
020     * elements of a DescriptorRepository.
021     * This constants are used in marshalling and unmarshalling a
022     * DescriptorRepository to identify all its constituent elements.
023     * @author              Thomas Mahler
024     * @version $Id: RepositoryElements.java,v 1.1 2007-08-24 22:17:29 ewestfal Exp $
025     */
026    public interface RepositoryElements
027    {
028    
029        public static final int MAPPING_REPOSITORY = 0;
030        public static final int JDBC_CONNECTION_DESCRIPTOR = 1;
031        public static final int DBMS_NAME = 2;
032        public static final int SORT = 3;
033        public static final int SCHEMA_NAME = 5;
034        public static final int JCD_ALIAS = 82;
035        public static final int DEFAULT_CONNECTION = 80;
036        public static final int DRIVER_NAME = 6;
037        public static final int URL_PROTOCOL = 7;
038        public static final int URL_SUBPROTOCOL = 8;
039        public static final int URL_DBALIAS = 9;
040        public static final int USER_NAME = 10;
041        public static final int USER_PASSWD = 11;
042        public static final int EAGER_RELEASE = 74;
043        public static final int BATCH_MODE = 83;
044        public static final int USE_AUTOCOMMIT = 90;
045        public static final int IGNORE_AUTOCOMMIT_EXCEPTION = 91;
046        public static final int CLASS_DESCRIPTOR = 12;
047        public static final int CLASS_NAME = 13;
048        public static final int CLASS_PROXY = 35;
049        public static final int CLASS_EXTENT = 33;
050        public static final int EXTENDS = 76;
051        public static final int TABLE_NAME = 14;
052        public static final int ORDERBY = 36;
053        public static final int FIELD_CONVERSION = 30;
054        public static final int ROW_READER = 32;
055        public static final int FIELD_DESCRIPTOR = 15;
056        public static final int FIELD_NAME = 16;
057        public static final int COLUMN_NAME = 17;
058        public static final int JDBC_TYPE = 18;
059        public static final int PRIMARY_KEY = 19;
060        public static final int AUTO_INCREMENT = 31;
061        public static final int SEQUENCE_NAME = 77;
062        public static final int REFERENCE_DESCRIPTOR = 20;
063        public static final int REFERENCED_CLASS = 22;
064        public static final int AUTO_RETRIEVE = 24;
065        public static final int AUTO_UPDATE = 25;
066        public static final int AUTO_DELETE = 26;
067        public static final int OTM_DEPENDENT = 102;
068        public static final int COLLECTION_DESCRIPTOR = 27;
069        public static final int ITEMS_CLASS = 29;
070        public static final int INVERSE_FK = 38;
071        public static final int COLLECTION_CLASS = 37;
072        public static final int INDIRECTION_TABLE = 39;
073        public static final int FK_POINTING_TO_ITEMS_CLASS = 40;
074        public static final int FK_POINTING_TO_THIS_CLASS = 41;
075        public static final int DATASOURCE_NAME = 44;
076        public static final int JDBC_LEVEL = 45;
077        public static final int LOCKING = 46;
078        public static final int UPDATE_LOCK = 98;
079        public static final int REFRESH = 47;
080        public static final int PROXY_REFERENCE = 48;
081        public static final int ISOLATION_LEVEL = 34;
082        public static final int FOREIGN_KEY = 49;
083        public static final int NULLABLE = 50;
084        public static final int INDEXED = 51;
085        public static final int LENGTH = 52;
086        public static final int PRECISION = 53;
087        public static final int SCALE = 54;
088        public static final int ACCESS = 99;
089    
090        public static final int CON_MAX_ACTIVE = 55;
091        public static final int CON_MAX_IDLE = 56;
092        public static final int CON_MAX_WAIT = 57;
093        public static final int CON_MIN_EVICTABLE_IDLE_TIME_MILLIS = 58;
094        public static final int CON_NUM_TESTS_PER_EVICTION_RUN = 59;
095        public static final int CON_TEST_ON_BORROW = 60;
096        public static final int CON_TEST_ON_RETURN = 61;
097        public static final int CON_TEST_WHILE_IDLE = 62;
098        public static final int CON_TIME_BETWEEN_EVICTION_RUNS_MILLIS = 63;
099        public static final int CON_WHEN_EXHAUSTED_ACTION = 64;
100        public static final int CON_LOG_ABANDONED = 87;
101        public static final int CON_REMOVE_ABANDONED = 85;
102        public static final int CON_REMOVE_ABANDONED_TIMEOUT = 86;
103    
104        public static final int CONNECTION_POOL = 65;
105        public static final int CONNECTION_FACTORY = 66;
106        public static final int VALIDATION_QUERY = 79;
107        public static final int SEQUENCE_MANAGER = 88;
108        public static final int SEQUENCE_MANAGER_CLASS = 89;
109    
110        public static final int REPOSITORY_VERSION = 67;
111        public static final int CLASS_REF = 68;
112        public static final int ID = 69;
113        public static final int FIELD_ID_REF = 70;
114        public static final int FIELD_REF = 84;
115        public static final int ATTRIBUTE = 71;
116        public static final int ATTRIBUTE_NAME = 72;
117        public static final int ATTRIBUTE_VALUE = 73;
118        public static final int DOCUMENTATION = 75;
119        public static final int ACCEPT_LOCKS = 78;
120        public static final int QUERY_CUSTOMIZER = 92;
121        public static final int INITIALIZATION_METHOD = 93;
122        public static final int FACTORY_CLASS = 100;
123        public static final int FACTORY_METHOD = 101;
124    
125        public static final int INDEX_DESCRIPTOR = 94;
126        public static final int INDEX_COLUMN = 95;
127        public static final int UNIQUE = 96;
128        public static final int NAME = 97;
129    
130        public static final int INSERT_PROCEDURE = 103;
131        public static final int UPDATE_PROCEDURE = 104;
132        public static final int DELETE_PROCEDURE = 105;
133        public static final int CONSTANT_ARGUMENT = 106;
134        public static final int RUNTIME_ARGUMENT = 107;
135        public static final int RETURN_FIELD_REF = 108;
136        public static final int INCLUDE_ALL_FIELDS = 109;
137        public static final int INCLUDE_PK_FIELDS_ONLY = 110;
138        public static final int RETURN = 111;
139        public static final int VALUE = 112;
140    
141        public static final int OBJECT_CACHE = 113;
142    
143        public static final int PROXY_PREFETCHING_LIMIT = 114;
144    
145        // maintain a next id to keep track where we are
146        static final int _NEXT = 115;
147    
148        // String constants
149        public static final String TAG_ACCESS = "access";
150    
151        public static final String TAG_ACCESS_ANONYMOUS = "anonymous";
152        public static final String TAG_ACCESS_READONLY = "readonly";
153        public static final String TAG_ACCESS_READWRITE = "readwrite";
154    
155        public static final String TAG_SUPER = "super";
156    
157        public static final String CASCADE_NONE_STR = "none";
158        public static final String CASCADE_LINK_STR = "link";
159        public static final String CASCADE_OBJECT_STR = "object";
160    
161    }