################################################################################
# Copyright (c) 2007, 2009 Oracle. All rights reserved.
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License v1.0, which accompanies this distribution
# and is available at http://www.eclipse.org/legal/epl-v10.html.
# 
# Contributors:
#     Oracle - initial API and implementation
################################################################################

MappingFileWizard_title=New EclipseLink Mapping File
MappingFileWizardPage_title=EclipseLink mapping file
MappingFileWizardPage_desc=Specify EclipseLink mapping file location and properties

EclipseLink1_1MappingFileWizard_title=New EclipseLink 1.1 Mapping File
EclipseLink1_1MappingFileWizardPage_title=EclipseLink 1.1 mapping file
EclipseLink1_1MappingFileWizardPage_desc=Specify EclipseLink 1.1 mapping file location and properties

Boolean_True = True
Boolean_False = False

DefaultWithoutValue=Default ()
DefaultWithValue=Default ({0})
	
PersistenceXmlTabFolder_defaultEmpty = Default ()
PersistenceXmlTabFolder_defaultWithOneParam = Default ({0})

PersistenceXmlGeneralTab_name = Name:
PersistenceXmlGeneralTab_provider = Provider:
PersistenceXmlGeneralTab_browse = Browse...
PersistenceXmlGeneralTab_description = Description:

# General
PersistenceXmlGeneralTab_title = General
PersistenceXmlGeneralTab_generalSectionTitle = General
PersistenceXmlGeneralTab_mappedClassesSectionTitle = Managed Classes
PersistenceXmlGeneralTab_mappedClassesSectionDescription=Specify the list of classes to be managed in this persistence unit.
PersistenceXmlGeneralTab_xmlMappingFilesSectionTitle = XML Mapping Files
PersistenceXmlGeneralTab_xmlMappingFilesSectionDescription=Specify the XML mapping files for this persistence unit.

PersistenceXmlGeneralTab_nameLabel = Name:
PersistenceXmlGeneralTab_persistenceProviderLabel = Persistence Provider:
PersistenceXmlGeneralTab_descriptionLabel = Description:

PersistenceXmlGeneralTab_excludeUnlistedMappedClasses=Exclude unlisted classes
PersistenceXmlGeneralTab_excludeUnlistedMappedClassesWithDefault=Exclude unlisted classes ({0})
PersistenceXmlGeneralTab_mappedClassesNoName=<name not set>
PersistenceXmlGeneralTab_open=Open

PersistenceXmlGeneralTab_xmlMappingFilesDialog_title=JPA XML Mapping File Selection
PersistenceXmlGeneralTab_xmlMappingFilesDialog_message=Choose the XML mapping files to be added to the persistence unit.
PersistenceXmlGeneralTab_ormNoName=<name not set>
PersistenceXmlGeneralTab_excludeEclipselinkOrm=Exclude unlisted EclipseLink XML mapping file
PersistenceXmlGeneralTab_excludeEclipselinkOrmWithDefault=Exclude unlisted EclipseLink XML mapping file ({0})

# Connection
PersistenceXmlConnectionTab_title = Connection
PersistenceXmlConnectionTab_sectionTitle = Persistence Unit Connection
PersistenceXmlConnectionTab_sectionDescription = Configure the data source or JDBC connection properties.
PersistenceXmlConnectionTab_defaultWithOneParam = Default ({0})
PersistenceXmlConnectionTab_defaultEmpty = Default ()

PersistenceXmlConnectionTab_transactionTypeLabel = Transaction type:

TransactionTypeComposite_jta = JTA
TransactionTypeComposite_resource_local = Resource Local

PersistenceXmlConnectionTab_nativeSqlLabel = Native SQL
PersistenceXmlConnectionTab_nativeSqlLabelDefault = Native SQL ({0})

PersistenceXmlConnectionTab_batchWritingLabel = Batch writing:

BatchWritingComposite_none = None
BatchWritingComposite_jdbc = JDBC
BatchWritingComposite_buffered = Buffered
BatchWritingComposite_oracle_jdbc = Oracle JDBC

PersistenceXmlConnectionTab_cacheStatementsLabel = Statement caching:

PersistenceXmlConnectionTab_jtaDataSourceLabel = JTA data source:
PersistenceXmlConnectionTab_nonJtaDataSourceLabel = Non-JTA data source:

PersistenceXmlConnectionTab_driverLabel = Driver:
PersistenceXmlConnectionTab_urlLabel = URL:
PersistenceXmlConnectionTab_userLabel = User:
PersistenceXmlConnectionTab_passwordLabel = Password:
PersistenceXmlConnectionTab_bindParametersLabel = Bind parameters
PersistenceXmlConnectionTab_bindParametersLabelDefault = Bind parameters ({0})

PersistenceXmlConnectionTab_readConnectionsSharedLabel = Shared
PersistenceXmlConnectionTab_readConnectionsSharedLabelDefault = Shared ({0})
PersistenceXmlConnectionTab_readConnectionsSectionTitle = Read Connection
PersistenceXmlConnectionTab_readConnectionsMinLabel = Minimum:
PersistenceXmlConnectionTab_readConnectionsMaxLabel = Maximum:
PersistenceXmlConnectionTab_writeConnectionsSectionTitle = Write Connection
PersistenceXmlConnectionTab_writeConnectionsMinLabel = Minimum:
PersistenceXmlConnectionTab_writeConnectionsMaxLabel = Maximum:

ConnectionPropertiesComposite_Database_GroupBox=Database

JdbcPropertiesComposite_EclipseLinkConnectionPool_GroupBox=EclipseLink Connection Pool

JdbcConnectionPropertiesComposite_ConnectionDialog_Message=&Enter connection name or pattern (*, ?, or camel case):
JdbcConnectionPropertiesComposite_ConnectionDialog_Title=Connection Selection

# SchemaGeneration
PersistenceXmlSchemaGenerationTab_title = Schema Generation
PersistenceXmlSchemaGenerationTab_sectionTitle = Persistence Unit Schema Generation
PersistenceXmlSchemaGenerationTab_sectionDescription = Configure the EclipseLink schema generation properties.
PersistenceXmlSchemaGenerationTab_defaultWithOneParam = Default ({0})
PersistenceXmlSchemaGenerationTab_defaultEmpty = Default ()

PersistenceXmlSchemaGenerationTab_ddlGenerationTypeLabel = DDL generation type:
PersistenceXmlSchemaGenerationTab_outputModeLabel = Output mode:
PersistenceXmlSchemaGenerationTab_createDdlFileNameLabel = Create DDL file name:
PersistenceXmlSchemaGenerationTab_dropDdlFileNameLabel = Drop DDL file name:

OutputModeComposite_both = Both
OutputModeComposite_sql_script = Sql-script
OutputModeComposite_database = Database

DdlGenerationTypeComposite_none = None
DdlGenerationTypeComposite_create_tables = Create Tables
DdlGenerationTypeComposite_drop_and_create_tables = Drop and Create Tables

PersistenceXmlSchemaGenerationTab_ddlGenerationLocationLabel = DDL generation location:
	
DdlGenerationLocationComposite_dialogTitle = Generation Location
DdlGenerationLocationComposite_dialogMessage = Choose a folder for the generated DDL files:

# Caching
PersistenceXmlCachingTab_title = Caching
PersistenceXmlCachingTab_sectionTitle = Persistence Unit Caching
PersistenceXmlCachingTab_sectionDescription = Configure the session or entity specific EclipseLink caching properties.

CacheDefaultsComposite_groupTitle = Defaults

PersistenceXmlCachingTab_defaultCacheTypeLabel = Default cache type:
PersistenceXmlCachingTab_cacheTypeLabel = Cache type:

PersistenceXmlCachingTab_defaultSharedCacheLabel = Shared cache ({0})
PersistenceXmlCachingTab_sharedCacheLabel = Shared cache

PersistenceXmlCachingTab_defaultSharedCacheDefaultLabel = Default shared cache ({0})
PersistenceXmlCachingTab_sharedCacheDefaultLabel = Default shared cache

CacheSizeComposite_cacheSize=Cache size:

CacheTypeComposite_full = Full
CacheTypeComposite_hard_weak = Weak with Hard Subcache
CacheTypeComposite_none = None
CacheTypeComposite_soft = Soft
CacheTypeComposite_soft_weak = Weak with Soft Subcache
CacheTypeComposite_weak = Weak

DefaultCacheSizeComposite_defaultCacheSize=Default cache size:

DefaultCacheTypeComposite_full = Full
DefaultCacheTypeComposite_hard_weak = Weak With Hard Subcache
DefaultCacheTypeComposite_none = None
DefaultCacheTypeComposite_soft = Soft
DefaultCacheTypeComposite_soft_weak = Weak with Soft Subcache
DefaultCacheTypeComposite_weak = Weak

EntityDialog_selectEntity = Select an Entity
EntityDialog_name = Name:

CachingEntityListComposite_groupTitle = Entity caching
CachingEntityListComposite_editButton = Edit...

CachingEntityListComposite_dialogMessage=&Enter type name prefix or pattern (*, ?, or camel case):
CachingEntityListComposite_dialogTitle=Entity Selection

PersistenceXmlCachingTab_FlushClearCacheLabel = Flush clear cache:

FlushClearCacheComposite_drop = Drop
FlushClearCacheComposite_drop_invalidate = Drop Invalidate
FlushClearCacheComposite_merge = Merge

# Customization
PersistenceXmlCustomizationTab_title = Customization
PersistenceXmlCustomizationTab_sectionTitle = Persistence Unit Customization
PersistenceXmlCustomizationTab_sectionDescription = Set default or entity specific EclipseLink customization and validation properties.
PersistenceXmlCustomizationTab_defaultWithOneParam = Default ({0})
PersistenceXmlCustomizationTab_defaultEmpty = Default ()

PersistenceXmlCustomizationTab_weavingLabel = Weaving:

PersistenceXmlCustomizationTab_weavingLazyLabelDefault = Weaving lazy ({0})
PersistenceXmlCustomizationTab_weavingLazyLabel = Weaving lazy
	
PersistenceXmlCustomizationTab_weavingChangeTrackingLabelDefault = Weaving change tracking ({0})
PersistenceXmlCustomizationTab_weavingChangeTrackingLabel = Weaving change tracking

PersistenceXmlCustomizationTab_weavingFetchGroupsLabelDefault = Weaving fetch groups ({0})
PersistenceXmlCustomizationTab_weavingFetchGroupsLabel = Weaving fetch groups

PersistenceXmlCustomizationTab_weavingInternalLabel = Weaving internal
PersistenceXmlCustomizationTab_weavingInternalLabelDefault = Weaving internal ({0})

PersistenceXmlCustomizationTab_weavingEagerLabel = Weaving eager
PersistenceXmlCustomizationTab_weavingEagerLabelDefault = Weaving eager ({0})

PersistenceXmlCustomizationTab_throwExceptionsLabelDefault = Throw exceptions ({0})
PersistenceXmlCustomizationTab_throwExceptionsLabel = Throw exceptions

PersistenceXmlCustomizationTab_exceptionHandlerLabel = Exception handler:

WeavingComposite_true_ = Weave Dynamically
WeavingComposite_false_ = No Weaving
WeavingComposite_static_ = Weave Statically

CustomizationEntityListComposite_groupTitle = Descriptor customizers
CustomizationEntityListComposite_editButton = Edit...

CustomizationEntityListComposite_dialogMessage=&Enter type name prefix or pattern (*, ?, or camel case):
CustomizationEntityListComposite_dialogTitle=Entity Selection

PersistenceXmlCustomizationTab_customizerLabel = Customizer:
PersistenceXmlCustomizationTab_sessionCustomizerLabel = Session customizers

PersistenceXmlCustomizationTab_noName=<name not set>

PersistenceXmlCustomizationTab_validationOnlyLabel = Validation only
PersistenceXmlCustomizationTab_validationOnlyLabelDefault = Validation only ({0})

PersistenceXmlCustomizationTab_profilerLabel = Profiler:
PersistenceXmlCustomizationTab_browse = Browse...

ProfilerComposite_performance_profiler = Performance Profiler
ProfilerComposite_query_monitor = Query Monitor 
ProfilerComposite_no_profiler = No Profiler

# Logging
PersistenceXmlLoggingTab_title = Logging
PersistenceXmlLoggingTab_sectionTitle = Persistence Unit Logging
PersistenceXmlLoggingTab_sectionDescription = Configure the EclipseLink logging properties.
PersistenceXmlLoggingTab_defaultWithOneParam = Default ({0})
PersistenceXmlLoggingTab_defaultEmpty = Default ()

PersistenceXmlLoggingTab_loggingLevelLabel = Logging level:

LoggingLevelComposite_off = Off
LoggingLevelComposite_severe = Severe
LoggingLevelComposite_warning = Warning
LoggingLevelComposite_info = Info
LoggingLevelComposite_config = Config
LoggingLevelComposite_fine = Fine
LoggingLevelComposite_finer = Finer
LoggingLevelComposite_finest = Finest
LoggingLevelComposite_all = All

PersistenceXmlLoggingTab_loggerLabel = Logger:
PersistenceXmlLoggingTab_browse = Browse...
LoggerComposite_default_logger = Default Logger
LoggerComposite_java_logger = Java Logger
LoggerComposite_server_logger = Server Logger

PersistenceXmlLoggingTab_timestampLabel = Timestamp
PersistenceXmlLoggingTab_timestampLabelDefault = Timestamp ({0})
PersistenceXmlLoggingTab_threadLabel = Thread
PersistenceXmlLoggingTab_threadLabelDefault = Thread ({0})
PersistenceXmlLoggingTab_sessionLabel = Session
PersistenceXmlLoggingTab_sessionLabelDefault = Session ({0})
PersistenceXmlLoggingTab_exceptionsLabel = Exceptions
PersistenceXmlLoggingTab_exceptionsLabelDefault = Exceptions ({0})

PersistenceXmlLoggingTab_loggersLabel = Loggers:

PersistenceXmlLoggingTab_loggingFileLabel = Log file:

LoggingFileLocationComposite_dialogTitle = Log File Location
LoggingFileLocationComposite_dialogMessage = Choose a folder for the log file:

# Options
PersistenceXmlOptionsTab_title = Options
PersistenceXmlOptionsTab_sessionSectionTitle = EclipseLink Session Options
PersistenceXmlOptionsTab_sessionSectionDescription = Configure the EclipseLink session options.
PersistenceXmlOptionsTab_defaultWithOneParam = Default ({0})
PersistenceXmlOptionsTab_defaultEmpty = Default ()

PersistenceXmlOptionsTab_sessionName = Session name:
PersistenceXmlOptionsTab_sessionsXml = Sessions XML:

PersistenceXmlOptionsTab_includeDescriptorQueriesLabel = Include descriptor queries
PersistenceXmlOptionsTab_includeDescriptorQueriesLabelDefault = Include descriptor queries ({0})

PersistenceXmlOptionsTab_eventListenerLabel = Event listener:
PersistenceXmlOptionsTab_targetDatabaseLabel = Target database:

PersistenceXmlOptionsTab_miscellaneousSectionTitle = Miscellaneous Options
PersistenceXmlOptionsTab_miscellaneousSectionDescription = Configure the miscellaneous options.

PersistenceXmlOptionsTab_temporalMutableLabel = Temporal mutable
PersistenceXmlOptionsTab_temporalMutableLabelDefault = Temporal mutable ({0})

TargetDatabaseComposite_attunity = Attunity
TargetDatabaseComposite_auto = Auto
TargetDatabaseComposite_cloudscape = Cloudscape
TargetDatabaseComposite_database = Database
TargetDatabaseComposite_db2 = DB2
TargetDatabaseComposite_db2mainframe = DB2Mainframe
TargetDatabaseComposite_dbase = DBase
TargetDatabaseComposite_derby = Derby
TargetDatabaseComposite_hsql = HSQL
TargetDatabaseComposite_informix = Informix
TargetDatabaseComposite_javadb = JavaDB
TargetDatabaseComposite_mysql = MySQL
TargetDatabaseComposite_oracle = Oracle
TargetDatabaseComposite_oracle11 = Oracle11
TargetDatabaseComposite_oracle10 = Oracle10g
TargetDatabaseComposite_oracle9 = Oracle9i
TargetDatabaseComposite_oracle8 = Oracle8i
TargetDatabaseComposite_pointbase = PointBase
TargetDatabaseComposite_postgresql = PostgreSQL
TargetDatabaseComposite_sqlanywhere = SQLAnywhere
TargetDatabaseComposite_sqlserver = SQLServer
TargetDatabaseComposite_sybase = Sybase
TargetDatabaseComposite_timesten = TimesTen

PersistenceXmlOptionsTab_targetServerLabel = Target server:

TargetServerComposite_none = None
TargetServerComposite_oc4j = OC4J
TargetServerComposite_sunas9 = SunAS9
TargetServerComposite_websphere = WebSphere
TargetServerComposite_websphere_6_1 = WebSphere 6.1
TargetServerComposite_weblogic = WebLogic
TargetServerComposite_weblogic_9 = WebLogic 9
TargetServerComposite_weblogic_10 = WebLogic 10
TargetServerComposite_jboss = JBoss

# DDLGeneration
EclipseLinkDDLGeneratorUi_generatingDDLWarningTitle = Generating DDL
EclipseLinkDDLGeneratorUi_generatingDDLWarningMessage = Warning:  Generating DDL will DROP existing tables and{0}CREATE new tables based on the Entities in your project.{1}Are you sure you want to continue?
EclipseLinkDDLGeneratorUi_error = Error
