| /* |
| |
| Derby - Class org.apache.derby.shared.common.reference.Attribute |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to you under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| */ |
| |
| package org.apache.derby.shared.common.reference; |
| |
| /** |
| * List of all connection (JDBC) attributes by the system. |
| * |
| * |
| * <P> |
| * This class exists for two reasons |
| * <Ol> |
| * <LI> To act as the internal documentation for the attributes. |
| * <LI> To remove the need to declare a java static field for the attributes |
| * name in the protocol/implementation class. This reduces the footprint as the |
| * string is final and thus can be included simply as a String constant pool |
| * entry. |
| * </OL> |
| * <P> |
| * This class should not be shipped with the product. |
| * |
| * <P> |
| * This class has no methods, all it contains are String's which by are public, |
| * static and final since they are declared in an interface. |
| */ |
| |
| public interface Attribute { |
| |
| /** |
| * Not an attribute but the root for the JDBC URL that Derby supports. |
| */ |
| String PROTOCOL = "jdbc:derby:"; |
| |
| /** |
| * The SQLJ protocol for getting the default connection for server side jdbc |
| */ |
| String SQLJ_NESTED = "jdbc:default:connection"; |
| |
| // Network Protocols. These need to be rejected by the embedded driver. |
| |
| /** |
| * The protocol for Derby Network Client |
| */ |
| String DNC_PROTOCOL = "jdbc:derby://"; |
| |
| /** |
| * The protocol for the IBM Universal JDBC Driver |
| * |
| */ |
| String JCC_PROTOCOL = "jdbc:derby:net:"; |
| |
| /** |
| * User should use this prefix for the client attributes traceLevel |
| * and traceDirectory when they are sending those attributes as JVM |
| * properties. |
| * These 2 attributes can be sent through jdbc url directly (supported |
| * way) or as JVM properties with the following prefix (undocumented |
| * way). DERBY-1275 |
| */ |
| String CLIENT_JVM_PROPERTY_PREFIX = "derby.client."; |
| |
| /** |
| * Attribute name to encrypt the database on disk. If set to true, all user |
| * data is stored encrypted on disk. |
| */ |
| String DATA_ENCRYPTION = "dataEncryption"; |
| |
| /** |
| * If dataEncryption is true, use this attribute to pass in the secret key. |
| * The secret key must be at least 8 characters long. This key must not be |
| * stored persistently in cleartext anywhere. |
| */ |
| |
| String BOOT_PASSWORD = "bootPassword"; |
| |
| /** |
| * Attribute name to start replication master mode for a database. |
| * If used, REPLICATION_SLAVE_HOST is a required attribute. |
| */ |
| String REPLICATION_START_MASTER = "startMaster"; |
| |
| /** |
| * Attribute name to stop replication master mode for a database. |
| */ |
| String REPLICATION_STOP_MASTER = "stopMaster"; |
| |
| /** |
| * Attribute name to start replication slave mode for a database. |
| */ |
| String REPLICATION_START_SLAVE = "startSlave"; |
| |
| /** |
| * Attribute name to stop replication slave mode for a database. |
| */ |
| String REPLICATION_STOP_SLAVE = "stopSlave"; |
| |
| /** |
| * Attribute name to stop replication slave mode for a database. |
| * Internal use only |
| */ |
| String REPLICATION_INTERNAL_SHUTDOWN_SLAVE = "internal_stopslave"; |
| |
| /** |
| * If startMaster is true, this attribute is used to specify the |
| * host name the master should connect to. This is a required |
| * attribute. |
| */ |
| String REPLICATION_SLAVE_HOST = "slaveHost"; |
| |
| /** |
| * Attribute name to start failover for a given database.. |
| */ |
| String REPLICATION_FAILOVER = "failover"; |
| |
| /** |
| * If startMaster is true, this attribute is used to specify the |
| * port the master should connect to. This is an optional |
| * attribute. |
| */ |
| String REPLICATION_SLAVE_PORT = "slavePort"; |
| |
| /** |
| * The attribute that is used for the database name, from the JDBC notion of |
| * jdbc:<subprotocol>:<subname> |
| */ |
| String DBNAME_ATTR = "databaseName"; |
| |
| /** |
| * The attribute that is used to request a shutdown. |
| */ |
| String SHUTDOWN_ATTR = "shutdown"; |
| |
| /** |
| * The attribute that is used to request a database create. |
| */ |
| String CREATE_ATTR = "create"; |
| |
| /** |
| * The attribute that is used to set the user name. |
| */ |
| String USERNAME_ATTR = "user"; |
| |
| /** |
| * The attribute that is used to set the user password. |
| */ |
| String PASSWORD_ATTR = "password"; |
| |
| /** |
| * The attribute that is used to set the connection's DRDA ID. |
| */ |
| String DRDAID_ATTR = "drdaID"; |
| |
| /** |
| * The attribute that is used to allow upgrade. |
| */ |
| String UPGRADE_ATTR = "upgrade"; |
| |
| /** |
| * Put the log on a different device. |
| */ |
| String LOG_DEVICE = "logDevice"; |
| |
| /** |
| * Set the territory for the database. |
| */ |
| String TERRITORY = "territory"; |
| |
| /** |
| * Set the collation sequence of the database, currently on IDENTITY will be |
| * supported (strings will sort according to binary comparison). |
| */ |
| String COLLATE = "collate"; |
| |
| /** |
| * Attribute for encrypting a database. Specifies the cryptographic services |
| * provider. |
| */ |
| String CRYPTO_PROVIDER = "encryptionProvider"; |
| |
| /** |
| * Attribute for encrypting a database. Specifies the cryptographic |
| * algorithm. |
| */ |
| String CRYPTO_ALGORITHM = "encryptionAlgorithm"; |
| |
| /** |
| * Attribute for encrypting a database. Specifies the key length in bytes |
| * for the specified cryptographic algorithm. |
| */ |
| String CRYPTO_KEY_LENGTH = "encryptionKeyLength"; |
| |
| /** |
| * Attribute for encrypting a database. Specifies the actual key. When this |
| * is specified all the supplied crypto information is stored external to |
| * the database, ie by the application. |
| */ |
| String CRYPTO_EXTERNAL_KEY = "encryptionKey"; |
| |
| /** |
| * This attribute is used to request to create a database from backup. This |
| * will throw error if a database with same already exists at the location |
| * where we tring to create. |
| */ |
| String CREATE_FROM = "createFrom"; |
| |
| /** |
| * This attribute is used to request a database restore from backup. It must |
| * be used only when the active database is corrupted, because it will |
| * cleanup the existing database and replace it from the backup. |
| */ |
| String RESTORE_FROM = "restoreFrom"; |
| |
| /** |
| * The attribute that is used to request a roll-forward recovery of the |
| * database. |
| */ |
| String ROLL_FORWARD_RECOVERY_FROM = "rollForwardRecoveryFrom"; |
| |
| /** |
| * securityMechanism sets the mechanism for transmitting the user name and |
| * password from the client. Client driver attribute. |
| */ |
| String CLIENT_SECURITY_MECHANISM = "securityMechanism"; |
| |
| /** |
| * traceFile sets the client side trace file. Client driver attribute. |
| */ |
| String CLIENT_TRACE_FILE = "traceFile"; |
| |
| /** |
| * traceDirectory sets the client side trace directory. |
| * Client driver attribute. |
| */ |
| String CLIENT_TRACE_DIRECTORY = "traceDirectory"; |
| |
| /** |
| * traceFileAppend. |
| * Client driver attribute. |
| */ |
| String CLIENT_TRACE_APPEND = "traceFileAppend"; |
| |
| /** |
| * traceLevel. |
| * Client driver attribute. |
| */ |
| String CLIENT_TRACE_LEVEL = "traceLevel"; |
| |
| /** |
| * retrieveMessageText. |
| * Client driver attribute. |
| */ |
| String CLIENT_RETIEVE_MESSAGE_TEXT = "retrieveMessageText"; |
| |
| /** |
| The attribute that is used to set client SSL mode. |
| */ |
| String SSL_ATTR = "ssl"; |
| |
| } |
| |
| |