################################################################################
# Copyright (c) 2006, 2008 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
################################################################################

Boolean_False=False
Boolean_True=True

PersistenceEditor_page_help=Help
PersistenceEditor_sourceTab=Source

PersistenceUnitClassesComposite_description=Specify the list of classes to be managed in this persistence unit.
PersistenceUnitClassesComposite_excludeUnlistedMappedClasses=Exclude Unlisted Classes
PersistenceUnitClassesComposite_excludeUnlistedMappedClassesWithDefault=Exclude Unlisted Classes ({0})
PersistenceUnitClassesComposite_mappedClassesNoName=<name not set>
PersistenceUnitClassesComposite_open=Open

PersistenceUnitConnectionGeneralComposite_default=Default(JTA)
PersistenceUnitConnectionGeneralComposite_jta=JTA
PersistenceUnitConnectionGeneralComposite_resource_local=Resource Local

PersistenceUnitConnectionComposite_connection=Connection
PersistenceUnitConnectionComposite_database=Database
PersistenceUnitConnectionComposite_general=General

PersistenceUnitConnectionDatabaseComposite_jtaDatasourceName=JTA Data Source Name:
PersistenceUnitConnectionDatabaseComposite_nonJtaDatasourceName=Non-JTA Data Source Name:

PersistenceUnitConnectionGeneralComposite_transactionType=Transaction Type:

PersistenceUnitGeneralComposite_general=General
PersistenceUnitGeneralComposite_javaArchives=Java Archives
PersistenceUnitGeneralComposite_jpaMappingDescriptors=XML Mapping Files
PersistenceUnitGeneralComposite_jpaMappingDescriptors_description=Specify the XML mapping files for this persistence unit.
PersistenceUnitGeneralComposite_mappedClasses=Managed Classes
PersistenceUnitGeneralComposite_name=Name:
PersistenceUnitGeneralComposite_persistenceProvider=Persistence Provider:
PersistenceUnitGeneralComposite_description=Description:

PersistenceUnitMappingFilesComposite_mappingFileDialog_message=Choose the XML mapping files to be added to the persistence unit.
PersistenceUnitMappingFilesComposite_mappingFileDialog_title=JPA XML Mapping File Selection
PersistenceUnitMappingFilesComposite_ormNoName=<name not set>

PersistenceUnitPropertiesComposite_nameColumn=Name
PersistenceUnitPropertiesComposite_properties=Properties
PersistenceUnitPropertiesComposite_properties_description=This table lists all properties that are defined for this persistence unit.
PersistenceUnitPropertiesComposite_valueColumn=Value