###############################################################################
# Copyright (c) 2000, 2003 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials 
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
# 
#
#
RestartTitle = Install/Update
RestartMessage = You will need to restart the workbench for the changes to take effect. \
Would you like to restart now?

OptionalRestartMessage = It is recommended you restart the workbench for the changes to take effect, \
but it may be possible to apply the changes to the current configuration without restarting.\
Would you like to restart now?

ApplyChanges=Apply Changes

AddBookmarksAction.add=Add Bookmark...
AddBookmarksAction.new=New Bookmark

ConfigurationManagerAction.title=Product Configuration
ConfigurationManagerWindow.fileMenu=&File
ConfigurationManagerWindow.properties=&Properties@Alt+Enter
ConfigurationManagerWindow.close=&Close@Alt+F4

EditBookmarksAction.edit=Edit Bookmarks...
EditBookmarksAction.title=Bookmarks

InstallWizardAction.title=Install/Update
InstallWizard.retryTitle = Problem occurred
InstallWizard.retry = Do you want to retry?

WebBookmarksDialog.label=Current Bookmarks:
WebBookmarksDialog.add=Add...
WebBookmarksDialog.new=New Bookmark
WebBookmarksDialog.edit=Edit...
WebBookmarksDialog.editTitle=Edit Bookmark
WebBookmarksDialog.remove=Remove

DiscoveryFolder.name=Sites to Visit
FeatureAdapter.failure=<failure>
SiteBookmark.connecting = Connecting to "{0}"...
SiteBookmark.downloading = Downloading:\ 
SiteCategory.other.label = Other
SiteCategory.other.description = Features found under this category are either not categorized or their categories could not be found on server.

MainPreferencePage.checkSignature = Check digital &signatures of downloaded archives
MainPreferencePage.historySize = &Maximum number of 'History' configurations:
MainPreferencePage.updateVersions = Valid updates
MainPreferencePage.updateVersions.equivalent = e&quivalent (1.0.1 -> 1.0.2 - only service increments)
MainPreferencePage.updateVersions.compatible = &compatible (1.0.9 -> 1.1.0 - service and minor increments)
MainPreferencePage.updatePolicy = &Update Policy
MainPreferencePage.updatePolicyURL = Po&licy URL:
MainPreferencePage.proxyGroup = Proxy settings
MainPreferencePage.enableHttpProxy = E&nable HTTP proxy connection
MainPreferencePage.httpProxyHost = &HTTP proxy host address:
MainPreferencePage.httpProxyPort =  HTTP &proxy host port:
MainPreferencePage.digitalSignature.title = Digital Signature Check
MainPreferencePage.digitalSignature.message = You have chosen to disable digital signature \
checks for downloaded archives. Note that unsigned archives may \
contain software that can harm your computer.

UpdateSettingsPreferencePage.description=Settings for automatic feature update
UpdateSettingsPreferencePage.label=Address &Mappings URL:
UpdateSettingsPreferencePage.invalid=Invalid mappings URL

ConfigurationActivitiesPropertyPage.label=Activities that caused the creation of this configuration:

ConfiguredSitePropertyPage.path=Location path: 
ConfiguredSitePropertyPage.type=Location type: 
ConfiguredSitePropertyPage.enabled=Enabled: 
ConfiguredSitePropertyPage.yes=yes
ConfiguredSitePropertyPage.no=no
ConfiguredSitePropertyPage.private=private
ConfiguredSitePropertyPage.extension=product extension
ConfiguredSitePropertyPage.product=product
ConfiguredSitePropertyPage.unknown=unknown

FeatureCopyrightPropertyPage.showInBrowser=Show in Browser
FeatureCopyrightPropertyPage.noCopyright=Feature does not contain a copyright statement

FeatureGeneralPropertyPage.name=Name:
FeatureGeneralPropertyPage.id=Identifier:
FeatureGeneralPropertyPage.version=Version:
FeatureGeneralPropertyPage.provider=Provider:
FeatureGeneralPropertyPage.size=Size:
FeatureGeneralPropertyPage.platforms=Supported Platforms
FeatureGeneralPropertyPage.os=Operating System: 
FeatureGeneralPropertyPage.ws=Windowing System: 
FeatureGeneralPropertyPage.arch=CPU Architecture: 
FeatureGeneralPropertyPage.nl=Languages: 
FeatureGeneralPropertyPage.all=all
FeatureGeneralPropertyPage.desc=Description

FeatureLicensePropertyPage.showInBrowser=Show in Browser
FeatureLicensePropertyPage.noLicense=Feature does not contain a license.

FeatureStatusPropertyPage.pendingChanges=The feature has pending changes.  Therefore, its status cannot be determined until you restart the workbench.
FeatureStatusPropertyPage.reason=Reason:
FeatureStatusPropertyPage.missingOptional=This optional feature is currently not installed.
FeatureStatusPropertyPage.missing=Referenced feature not found.
FeatureStatusPropertyPage.goodConfiguration=The feature is configured properly.

JarVerificationDialog.wtitle = Jar Verification
JarVerificationDialog.Title= Feature verification
JarVerificationDialog.Verification=Verification
JarVerificationDialog.ComponentNotInstalled=This feature will not be installed.

JarVerificationDialog.AboutToInstall.File=Warning: You are about to install an unsigned feature file.
JarVerificationDialog.NotDigitallySigned.File= Warning: This feature file has not been digitally signed.
JarVerificationDialog.CannotVerifyProvider.File=The provider of this feature file cannot be verified.
JarVerificationDialog.CorruptedContent.File=The content of this feature file has been corrupted
JarVerificationDialog.SignedComponent.File=You are about to install a signed feature file.
JarVerificationDialog.UnknownCertificate.File=The certificates used to authenticate this feature file are not recognized.
JarVerificationDialog.UnableToVerifyProvider.File=The provider of this feature file cannot be verified.
JarVerificationDialog.ProviderKnown.File=The provider of this feature file has been validated by a trusted third party.
JarVerificationDialog.KnownCertificate.File=One of the certificates used to authenticate this feature file was recognized.

JarVerificationDialog.AboutToInstall.Feature=Warning: You are about to install an unsigned feature.
JarVerificationDialog.NotDigitallySigned.Feature= Warning: This feature has not been digitally signed.
JarVerificationDialog.CannotVerifyProvider.Feature=The provider of this feature cannot be verified.
JarVerificationDialog.CorruptedContent.Feature=The content of this feature has been corrupted
JarVerificationDialog.SignedComponent.Feature=You are about to install a signed feature.
JarVerificationDialog.UnknownCertificate.Feature=The certificates used to authenticate this feature are not recognized.
JarVerificationDialog.UnableToVerifyProvider.Feature=The provider of this feature cannot be verified.
JarVerificationDialog.ProviderKnown.Feature=The provider of this feature has been validated by a trusted third party.
JarVerificationDialog.KnownCertificate.Feature=One of the certificates used to authenticate this feature was recognized.

JarVerificationDialog.Caution=\r\nCaution: \"{0}\" asserts that the content of this feature is safe. \r\nYou should only install this feature if you trust \"{0}\" to make that assertion
JarVerificationDialog.FileName=File Identifier:
JarVerificationDialog.FeatureName=Feature name:
JarVerificationDialog.FeatureIdentifier=Feature Identifier:
JarVerificationDialog.Provider=	Provider:
JarVerificationDialog.MayChooseToInstall=You may choose to install the feature or cancel its installation.
JarVerificationDialog.MayChooseToContinue=You may choose to continue to install the feature or cancel its installation.
JarVerificationDialog.Install=&Install
JarVerificationDialog.Continue=C&ontinue
JarVerificationDialog.Cancel=&Cancel
JarVerificationDialog.RootCA= According to: 
JarVerificationDialog.SubjectCA= File signed by: 
JarVerificationDialog.CertificateInfo= Certificate:

UserVerificationDialog.PasswordRequired=Password Required
UserVerificationDialog.ConnectTo=Connect to: 
UserVerificationDialog.Password=Password:
UserVerificationDialog.UserName=User name:

ConfigurationPreviewForm.configDescription=This is the description of the current configuration.
ConfigurationPreviewForm.install=Install Location

ConfigurationView.missingFeature = {0} (not installed)
ConfigurationView.current=Current Configuration
ConfigurationView.pending=\ (pending changes)
ConfigurationView.error=Error
ConfigurationView.collapseLabel=Collapse All
ConfigurationView.collapseTooltip=Collapse All
ConfigurationView.revertLabel=Revert...
ConfigurationView.installHistory =Installation History
ConfigurationView.extLocation=Extension Location...
ConfigurationView.uninstall=Uninstall
ConfigurationView.install=Install
ConfigurationView.anotherVersion=&Another Version...
ConfigurationView.findUpdates=Find Updates...
ConfigurationView.showNestedFeatures=Show Nested Features
ConfigurationView.showNestedTooltip=Show Nested Features
ConfigurationView.showInstall=Show Install Locations
ConfigurationView.showInstallTooltip=Show Install Locations
ConfigurationView.showDisabled=Show Disabled Features
ConfigurationView.showDisabledTooltip=Show Disabled Features
ConfigurationView.new=New
ConfigurationView.replaceWith=Replace with
ConfigurationView.revertPreviousLabel=Revert to Previous
ConfigurationView.revertPreviousDesc=You can revert to one of the previous configurations if you are having problems with the current one.
ConfigurationView.updateLabel=Scan for Updates
ConfigurationView.updateDesc=Search for updates for all the installed features.
ConfigurationView.detectedChanges=Detected Changes...
ConfigurationView.detectedLabel=Process Detected Changes
ConfigurationView.detectedDesc=Process configuration changes that were detected by the configuration manager.
ConfigurationView.installHistLabel=View Installation History
ConfigurationView.installHistDesc=View all activities since the installation of the product.
ConfigurationView.activitiesLabel=Show Activities
ConfigurationView.activitiesDesc=View the activities that caused the creation of this configuration.
ConfigurationView.enableLocDesc=You can enable or disable an entire install location. Disabling a location is equivalent to disabling every feature in it.
ConfigurationView.extLocLabel=Add an Extension Location
ConfigurationView.extLocDesc=Locate and add an extension location to the current configuration.
ConfigurationView.propertiesLabel=Show Properties
ConfigurationView.installPropDesc=View the properties of the install location.
ConfigurationView.replaceVersionLabel=Replace With Another Version
ConfigurationView.replaceVersionDesc=Disables the current version of the feature and replaces it with another version from the list of the currently disabled features.
ConfigurationView.enableFeatureDesc=You can enable or disable a feature. Function provided by the feature will be removed but the feature itself will still be present to be enabled later.
ConfigurationView.installOptionalLabel=Install from Originating Server
ConfigurationView.installOptionalDesc=This optional feature was not originally installed. You can install it now by connecting to the originating server of the parent.
ConfigurationView.uninstallLabel=Uninstall
ConfigurationView.uninstallDesc=This feature is currently not used and can be uninstalled from the product.
ConfigurationView.scanLabel=Scan for Updates
ConfigurationView.scanDesc=Search for updates for this feature.
ConfigurationView.featurePropLabel=Show Properties
ConfigurationView.featurePropDesc=View properties of the feature such as version, provider name, license agreement etc.

Actions.brokenConfigQuestion=The current configuration contains errors and this operation can have unpredictable results. Do you want to continue ?

FeatureStateAction.disable=Disable
FeatureStateAction.enable=Enable
FeatureStateAction.disableQuestion=Do you want to disable this feature?
FeatureStateAction.EnableQuestion=Do you want to enable this feature?
FeatureStateAction.dialogTitle=Current Configuration

FeatureUninstallAction.uninstall=Uninstall
FeatureUninstallAction.uninstallQuestion=Do you want to uninstall this feature?
FeatureUninstallAction.dialogTitle=Current Configuration

SiteStateAction.dialogTitle=Current Configuration
SiteStateAction.disableLabel=Disable
SiteStateAction.disableMessage=Do you want to disable all the features in "{0}"?
SiteStateAction.enableLabel=Enable
SiteStateAction.enableMessage=Do you want to enable features in "{0}"?

FindUpdatesAction.updates=Updates

InstallationHistoryAction.title=Installation History
InstallationHistoryAction.desc=The list below represents the history of your update activities from the product installation to date. Each operation carries a date it commenced, as well as activities performed. Operations are sorted by date in ascending order.
InstallationHistoryAction.activity=ACTIVITY
InstallationHistoryAction.dateTime=Date / Time
InstallationHistoryAction.target=Target
InstallationHistoryAction.action=Action
InstallationHistoryAction.status=Status
InstallationHistoryAction.errors=Errors while creating installation history file.

NewExtensionLocationAction.selectExtLocation=Select an extension location.
NewExtensionLocationAction.extInfoTitle=Invalid Extension
NewExtensionLocationAction.extInfoMessage=Selected location does not contain extension.  Please select another location.

ActivitiesTableViewer.enabled=Enabled
ActivitiesTableViewer.featureInstalled=Feature Installed
ActivitiesTableViewer.featureRemoved=Feature Removed
ActivitiesTableViewer.siteInstalled=Site Installed
ActivitiesTableViewer.siteRemoved=Site Removed
ActivitiesTableViewer.disabled=Disabled
ActivitiesTableViewer.revert=Revert
ActivitiesTableViewer.reconcile=Reconcile
ActivitiesTableViewer.unknown=unknown
ActivitiesTableViewer.date=Date
ActivitiesTableViewer.target=Target
ActivitiesTableViewer.action=Action

DeltaFeatureAdapter.shortName = {0} ({1})
DeltaFeatureAdapter.longName = {0} ({1}) in {2}

DuplicateConflictsDialog.title = Duplicate Conflicts
DuplicateConflictsDialog.message = If you continue with the update/install, \
the resulting configuration will contain duplication conflicts \
that may cause parts of the product to be unusable. Do you want to \
continue?
DuplicateConflictsDialog.treeLabel = &Detected conflicts:

InstallDeltaWizard.wtitle = Configuration Changes
InstallDeltaWizard.processing = Processing pending changes:
InstallDeltaWizard.title = Pending Configuration Changes
InstallDeltaWizard.desc = Check the changes you wish to process now. Remove changes that should never be processed.
InstallDeltaWizard.label = Detected &changes:
InstallDeltaWizard.delete = &Remove
InstallDeltaWizard.errors = &Error Details...
InstallDeltaWizard.message = Selected update will result in an invalid configuration.

ModeSelectionPage.title=Feature Updates
ModeSelectionPage.desc=Choose the way you want to search for features to install
ModeSelectionPage.updates=Search for updates of the currently installed features
ModeSelectionPage.newFeatures=Search for new features to install

MoreInfoGenerator.notInstalled=not installed
MoreInfoGenerator.all=all
MoreInfoGenerator.license=License
MoreInfoGenerator.HTMLlicense=HTML version of the license agreement
MoreInfoGenerator.licenseAvailable=is also available.
MoreInfoGenerator.copyright=Copyright
MoreInfoGenerator.HTMLcopyright=HTML version of the copyright
MoreInfoGenerator.copyrightAvailable=is also available.
MoreInfoGenerator.platforms=Supported Platforms
MoreInfoGenerator.footprint=Footprint
MoreInfoGenerator.downloadSize=Download size:
MoreInfoGenerator.installSize=Install size:
MoreInfoGenerator.downloadTime=Estimated download time:
MoreInfoGenerator.lessthanone=less than one minute
MoreInfoGenerator.desc=Description
MoreInfoGenerator.moreInfo=More info...

NewUpdateSiteDialog.name=Name: 
NewUpdateSiteDialog.url=URL: 

InstallWizard.wtitle=Install
InstallWizard.OptionalFeaturesPage.title= Optional Features
InstallWizard.OptionalFeaturesPage.desc = Some of the features that are included in this feature are optional.
InstallWizard.OptionalFeaturesPage.treeLabel = &Available optional features:
InstallWizard.OptionalFeaturesPage.selectAll = &Select All
InstallWizard.OptionalFeaturesPage.deselectAll = &Deselect All

InstallWizard.ReviewPage.counter = {0} of {1} selected.
InstallWizard.ReviewPage.title=Search Results
InstallWizard.ReviewPage.desc=Select features to install from the search result list.
InstallWizard.ReviewPage.label=Select the &features to install:
InstallWizard.ReviewPage.selectAll=&Select All
InstallWizard.ReviewPage.deselectAll=&Deselect All
InstallWizard.ReviewPage.moreInfo=&More Info
InstallWizard.ReviewPage.properties=&Properties
InstallWizard.ReviewPage.showStatus=&Error Details...
InstallWizard.ReviewPage.filterFeatures=\ &Filter features included in other features on the list
InstallWizard.ReviewPage.filterPatches=\ &Filter patches included in other patches on the list
InstallWizard.ReviewPage.feature=Feature
InstallWizard.ReviewPage.version=Version
InstallWizard.ReviewPage.provider=Provider
InstallWizard.ReviewPage.prop=&Properties
InstallWizard.ReviewPage.invalid.long=Invalid combination - select \"Show Status...\" for details.
InstallWizard.ReviewPage.invalid.short=Invalid combination
InstallWizard.ReviewPage.cycle=Cycle starting at {0}

InstallWizard.LicensePage.accept = I &accept the terms in the license agreement
InstallWizard.LicensePage.accept2 = I &accept the terms in the license agreements
InstallWizard.LicensePage.decline = I &do not accept the terms in the license agreement
InstallWizard.LicensePage.decline2 = I &do not accept the terms in the license agreements
InstallWizard.LicensePage.desc = This feature has a license \
agreement that you need to accept before proceeding with \
the installation.
InstallWizard.LicensePage.desc2 = Some of the features have license \
agreements that you need to accept before proceeding with \
the installation.
InstallWizard.LicensePage.down=Next &License
InstallWizard.LicensePage.header={0} out of {1}: {2} ({3})
InstallWizard.LicensePage.title = Feature License
InstallWizard.LicensePage.up=&Previous License

InstallWizard.TargetPage.title = Install Location
InstallWizard.TargetPage.desc = Choose the location where the features will be installed.
InstallWizard.TargetPage.jobsLabel = &Features to install:
InstallWizard.TargetPage.siteLabel = A&vailable sites:
InstallWizard.TargetPage.new = &Add Site...
InstallWizard.TargetPage.delete = &Remove Site
InstallWizard.TargetPage.requiredSpace = Required space:
InstallWizard.TargetPage.availableSpace = Free space:
InstallWizard.TargetPage.location = Target Location
InstallWizard.TargetPage.location.message = Select a new install location
InstallWizard.TargetPage.location.empty = Target install location must be selected. If none is available, create a new one.
InstallWizard.TargetPage.location.exists = Target location already exists.
InstallWizard.TargetPage.location.error.title = Invalid Location
InstallWizard.TargetPage.location.error.message = The selected location cannot be used to install features: {0}
InstallWizard.TargetPage.location.error.reason = Reason: {0}
InstallWizard.TargetPage.size = {0}KB
InstallWizard.TargetPage.unknownSize = Unknown
IntallWizard.TargetPage.patchError = Patch '{0}' must be installed in the same site as '{1}'

RevertConfigurationWizard.wtitle=Revert to a Previous Configuration
RevertConfigurationWizardPage.title=Revert to a Previous Configuration
RevertConfigurationWizardPage.desc=Choose a stable configuration to which you would like to revert
RevertConfigurationWizardPage.label=&Past configurations:
RevertConfigurationWizardPage.activities=&Activities that caused the creation of this configuration:
RevertConfigurationWizardPage.question=This operation requires restarting the workbench.  Would you like to proceed?

Revert.ProblemDialog.title = Restore Problems

ShowActivitiesDialog.title = Current Configuration
ShowActivitiesDialog.date = Date:
ShowActivitiesDialog.loc = Location: 
ShowActivitiesDialog.label = Activities that caused the creation of the current configuration:

SitePage.title=Update sites to visit
SitePage.desc=Select update sites to visit while looking for new features.
SitePage.label=&Sites to include in search:
SitePage.addUpdateSite=Add &Update Site...
SitePage.addLocalSite=Add &Local Site...
SitePage.addLocalZippedSite=Add &Archived Site...
SitePage.edit=&Edit...
SitePage.remove=&Remove
SitePage.ignore=Ignore features not applicable to this environment
SitePage.new=New Update Site
SitePage.dialogEditLocal=Edit Local Site
SitePage.dialogEditUpdateSite=Edit Update Site
SitePage.connecting=Connecting
SearchRunner.connectionError=Connection error

LocalSiteSelector.dialogMessage=Select a local update site.
LocalSiteSelector.dirInfoTitle=Invalid Site
LocalSiteSelector.dirInfoMessage=Selected location does not contain an update site.  Please select another location.
LocalSiteSelector.dialogMessagezip=Select Local Site Archive
LocalSiteSelector.zipInfoTitle=Invalid Site
LocalSiteSelector.zipInfoMessage=Selected archive does not contain an update site.  Please select another archive.

InstallServlet.unknownServerURL=Update server URL is unknown.
InstallServlet.noFeatures=No features to install.
InstallServlet.inProgress = Another install session is already in progress.
InstallServlet.incorrectURLFormat=Update server URL has incorrect format: {0}
InstallServlet.contactWebmaster=Contact Web master that maintains the page that initiated this operation.

MissingFeature.provider = N/A
MissingFeature.desc.unknown = The feature was not loaded due to errors. Open feature properties for details.
MissingFeature.desc.optional = This optional feature has not been installed.
InstallDeltaWizard.reminder=To process these changes at a later time, go to Help->Software Updates->Manage Configuration...
SwapFeatureWizard.title=Replace With Another Version
SwapFeatureWizardPage.title=Replace With Another Version
SwapFeatureWizardPage.desc=Disable the current version of the feature and replace it with one of the versions from the list
SwapFeatureWizardPage.label=&Available disabled versions:
