###############################################################################
# Copyright (c) 2004 IBM Corporation and others.
# 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:
#     IBM Corporation - initial API and implementation
###############################################################################
pluginName=Server UI
providerName=Eclipse.org

extensionPointEditorPages=Editor Pages
extensionPointEditorPageSections=Editor Page Sections
extensionPointEditorActions=Editor Actions
extensionPointServerActions=Server Actions
extensionPointServerImages=Server Images
extensionPointWizardFragments=Wizard Fragments

# --------------- Wizards ---------------
# (If the first two lines in a group do not start with "wiz", it is because
# those lines are displayed in the workbench "New" wizard. The rest of the
# text is displayed in each actual wizard)

wizardCategoryTitle=Server

# New Server (and Configuration) Wizard
newServer=Server
newServerDescription=Define a new server
wizNewServerWizardTitle=New Server
wizNewServerTitle=Define a New Server
wizNewServerDescription=Choose the type of server to create.
wizNewServerRuntime=Server runtime:

wizNewServerSelect=How do you want to select the server?
wizNewServerExisting=Choose an e&xisting server
wizNewServerDetect=&Automatically detect servers
wizNewServerManual=&Manually define a server
wizNewServerSelectExisting=Select the server that you want to use:

# Import Server Configuration wizard
importServerConfiguration=Server Configuration
wizImportConfigurationWizardTitle=Import a Server Configuration
wizImportConfigurationTitle=Import a server configuration
wizImportConfigurationDescription=Fill out the fields below to import the configuration.
wizImportConfigurationType=Configuration type:
wizImportConfigurationLocation=&Location:
wizImportConfigurationFile=Choose the server configuration file
wizImportConfigurationDirectory=Choose the directory containing the server configuration

# Select Server wizard
wizSelectServerWizardTitle=Server Selection
wizSelectServerPreferred=Set server as project &default (do not prompt)

# Select Server Client Wizard
wizSelectClientWizardTitle=Select a Server Client
wizSelectClientTitle=Select a server client
wizSelectClientDescription=Select a client to use with this server.
wizSelectClientMessage=Multiple clients can run on the current selection. Select a client from the list below:

# Task Wizard
wizTaskWizardTitle=Select Tasks
wizTaskTitle=Select Tasks
wizTaskDescription=Select the tasks to perform on the server.
wizTaskDetail=Tasks for:
wizTaskNone=There are currently no tasks that need to be performed.

# New Runtime Wizard
wizNewRuntimeWizardTitle=New Server Runtime
wizNewRuntimeTitle=New Server Runtime
wizNewRuntimeDescription=Define a new installed server runtime environment
wizEditRuntimeWizardTitle=Edit Server Runtime

# Add/Remove Modules
wizModuleWizardTitle=Add and Remove Projects
wizModuleTitle=Add and Remove Projects
wizModuleDescription=Modify the projects that are configured on the server
wizModuleMessage=Move projects to the right to configure them on the server
wizModuleAvailableList=&Available projects:
wizModuleDeployedList=&Configured projects:
wizModuleAdd=A&dd >
wizModuleAddAll=Add A&ll >>
wizModuleRemove=< &Remove
wizModuleRemoveAll=<< Re&move All

# General text used in multiple wizards
wizFolder=F&older:
wizBrowse=B&rowse...
wizDescription=Description:

# Wizard info and error messages
wizErrorInvalidFolder=The folder must be a server project or a folder within a server project
wizErrorClosedProject=The folder must not be in a closed project
wizErrorResourceAlreadyExists=The specified resource already exists
wizErrorServerCreationError=Cannot create a server using the selected type
wizErrorImport=Could not find a valid server configuration at the specified location


# --------------- Views ---------------

viewCategoryTitle=Server

# --- Server Configuration view ---
viewServers=Servers

viewNoConfiguration=No configuration
viewNoModules=Nothing deployed

# Actions
actionDelete=Delete
actionOpen=Open
actionSwitchConfiguration=Switch Configuration
actionMonitor=Monitoring
actionMonitorPort=Monitor port {0} ({1})
actionMonitorProperties=Properties...
actionNew=New
actionNewServer=Server and Server Configuration
actionNewServer=Server
actionNewServerConfiguration=Server Configuration

# --- Servers view ---
viewServersTitle=Servers

# Column titles
viewServer=Server
viewHost=Host name
viewStatus=Status
viewSync=State

actionRestartProject=Restart Project
actionRuntimeTarget=Target Runtime...

# Actions
actionStart=Start
actionStartToolTip=Start the server
actionDebug=Debug
actionDebugToolTip=Start the server in debug mode
actionProfile=Profile
actionProfileToolTip=Start the server in profiling mode
actionStop=Stop
actionStopToolTip=Stop the server
actionRestart=Restart
actionRestartToolTip=Restart the server
actionPublish=Publish
actionPublishToolTip=Publish to the server
actionModifyModules=Add and remove projects...
actionModifyModulesToolTip=Add and remove projects

# Status column text
viewStatusStarting=Starting
viewStatusStarted=Started
viewStatusStartedDebug=Debugging
viewStatusStartedProfile=Profiling
viewStatusStopping=Stopping
viewStatusStopped=Stopped
viewStatusUnsupported=Unsupported

viewStatusStarting1=Starting.
viewStatusStarting2=Starting..
viewStatusStarting3=Starting...

viewStatusStopping1=Stopping.
viewStatusStopping2=Stopping..
viewStatusStopping3=Stopping...

# Server State text
viewSyncOkay=Synchronized
viewSyncRestart=Restart
viewSyncPublish=Republish
viewSyncRestartPublish=Restart & republish
viewSyncPublishing=Publishing...

# --- set 2 ---
# Actions
actionStart2=Connect
actionStartToolTip2=Connect the server
actionDebug2=Debug
actionDebugToolTip2=Connect to the server in debug mode
actionProfile2=Profile
actionProfileToolTip2=Connect to the server in profiling mode
actionStop2=Disconnect
actionStopToolTip2=Disconnect from the server
actionRestart2=Reconnect
actionRestartToolTip2=Reconnect to the server
actionPublish2=Publish
actionPublishToolTip2=Publish to the server

# Status column text
viewStatusStarting4=Connecting
viewStatusStarted2=Connected
viewStatusStartedDebug2=Debugging
viewStatusStopping4=Disconnecting
viewStatusStopped2=Disconnected
viewStatusUnsupported2=Unsupported
viewStatusStartedProfile2=Profiling

# Server State text
viewSyncOkay2=Synchronized
viewSyncRestart2=Reconnect
viewSyncPublish2=Republish
viewSyncRestartPublish2=Reconnect and republish
viewSyncPublishing2=Publishing...


# --------------- Action Sets (toolbar icon groups) ---------------

# Servers action set
actionSetTitle=Server
actionSetNewServer=Create Server and Server Configuration
actionSetNewServer=Create Server

# Run on Server actions
actionRunOnServer=Run on Server...
actionDebugOnServer=Debug on Server...
actionProfileOnServer=Profile on Server...


# --------------- Preferences ---------------

# Names of the preference pages
preferenceServersTitle=Server
preferenceRuntimesTitle=Installed Runtimes
preferenceRuntimesTitleLong=Installed Server Runtime Environments

# Server preferences
prefShowPublishingDetails=Keep publishing dialog &open after publishing
prefPublishBeforeStarting=Automatically p&ublish before starting servers
prefAutoRestart=Automatically &restart servers when necessary
prefPromptIrreversible=Prompt before making &irreversible changes within an editor
prefCreateInWorkspace=Create server resources in workspace

prefSaveEditorsGroup=Save dirty editors before starting server
prefSaveEditorsNever=&Never
prefSaveEditorsPrompt=Pro&mpt
prefSaveEditorsAutosave=Auto-sav&e

# Project properties preferences
propertiesServer=Server
prefProjectDescription=Set the runtime target and the default server for the project. To edit a runtime or it's location, go to the Window > Preferences > Servers > Installed Runtimes preference page.
prefProject=Project:
prefProjectDefaultServer=Default server:
prefProjectNotModule=This project cannot be deployed to a server.
prefProjectNotConfigured=Not currently deployed to any servers
prefProjectNoServer=<None>

# Installed runtimes
preferenceRuntimesDescription=Add, remove, or edit installed server runtime definitions.\nThe checked runtime will be used by default when creating projects.\nInstalled server runtimes:


# --------------- Tasks (progress monitors) ---------------

# Creating default server project
createServerProjectTask=Creating server project.

# General tasks
savingTask=Saving {0}.
loadingTask=Loading {0}.
performingTasks=Performing tasks.

publishingStart=Connecting to server

# --------------- Dialogs ---------------

# Delete Server Resource dialog
deleteServerResourceDialogTitle=Delete Server Resource
deleteServerResourceDialogMessage=Are you sure you want to delete {0}?
deleteServerResourceDialogMessageMany=Are you sure you want to delete the {0} server resources?
deleteServerResourceDialogLooseConfigurations=Also delete unused server configuration {0}.
deleteServerResourceDialogLooseConfigurationsMany=Also delete {0} unused server configurations.

# Create Server Project dialog
createServerProjectDialogTitle=Create Server Project
createServerProjectDialogMessage=Do you want to create a new server project with the name {0}?

# Terminate Server dialog
terminateServerDialogTitle=Terminate Server
terminateServerDialogMessage=Server {0} is not responding. Do you want to terminate this server? Click OK to terminate the server or click Cancel to continue waiting.

# Server resource dirty dialog
resourceDirtyDialogTitle=Server Resource Dirty
resourceDirtyDialogMessage=The server resource {0} has unsaved changes. Do you want to continue?
resourceDirtyDialogContinue=Continue

runtimeTargetCombo=Target runtime:
runtimeTargetNone=<None>
runtimeTargetNewRuntime=New...
runtimeTargetChildren=Include child projects

# Publishing dialog text and status
publishingTitle=Publishing
publishingBusy=Publishing...
publishingOK=Publishing was successful
publishingInfo=Publishing completed with information
publishingWarning=Publishing completed with warning(s)
publishingError=Publishing failed
publishingCancelled=Publishing cancelled

# General dialogs
defaultDialogTitle=Server
dialogStoppingServer=Stopping server {0}.
dialogRestartingProject=Restarting project {0}.

# restart warning dialog
dialogModeWarningDebug=The server is not running in debug mode. You may restart the server in debug mode, continue without debugging, or cancel the operation.
dialogModeWarningProfile=The server is not running in profiling mode. You may restart the server in profiling mode, continue without profiling, or cancel the operation.
dialogModeWarningRestart=Restart
dialogModeWarningContinue=Continue

# Monitor dialog
dialogMonitorTitle=Monitoring Ports
dialogMonitorDescription=The following ports are being monitored on server {0}:
dialogMonitorAddDescription=The server {0} has the following ports that can be monitored:
dialogMonitorColumnPort=Server Port
dialogMonitorColumnType=Type
dialogMonitorColumnMonitorPort=Monitor Port
dialogMonitorColumnContentType=Content Type
dialogMonitorColumnStatus=Status
dialogMonitorMonitorPort=Monitor port:
dialogMonitorContentType=Content type:
dialogMonitorContentTypeAll=All
dialogMonitorContentTypeWeb=Web
dialogMonitorContentTypeWebServices=WebServices

start=Start
stop=Stop
started=Started
stopped=Stopped

# Confirm runtime removal
dialogRuntimeInUse=The runtime is currently being used and deleting it will cause compilation or runtime problems. Delete the runtime anyway?

# Can't add remove
dialogAddRemoveModulesNone=There are no projects that can be added or removed from the server.

# --------------- Misc UI ---------------

serverLaunchShortcut=Run on Server

serverEditor=Server Editor

# runtime composite
runtimeTypeCompDescription=Runtimes are used at build time to compile projects.
runtimeTypeCompTree=Select the type of &runtime that you want to define:
serverTypeCompDescription=Select the &server type:
name=Name
vendor=Vendor
version=Version
host=Host name
moduleSupport=Module Support
viewBy=&View By:

# misc composites
hostnameTitle=Specify the host where you want to publish
hostname=&Host name:

# Server launch configuration tab
serverLaunchConfigurationTab=Server
serverLaunchServer=Server:
serverLaunchRuntime=Runtime:
serverLaunchHost=Host name:

# Error Messages
errorDialogTitle=Server Error
errorServerAlreadyRunning=Server already running
errorNoServerSelected=No server selected
errorInvalidServer=Invalid server
errorServerStartFailed=The server named {0} did not start correctly. Check the Console for error messages.
errorPublishing=Could not publish to the server.
errorCouldNotCreateServerProject=Could not create server project
errorCouldNotCreateServerProjectStatus=Could not create server project: {0}
errorNoModules=Did not find anything to deploy to a server
errorNoServer=Could not find a server to run the selection
errorNoClient=Could not find a client that is able to launch the selection
errorCouldNotSavePreference=Could not save server preference information.
errorEditorCantSave=Can't save the server resource for the following reason(s):
errorEditor=Could not open editor because {0} is not a valid server or server configuration.
errorVersionLevel=The selected server does not support version {1} of the {0} specification.

# Info messages
infoNoRuntimesFound=No server runtimes were found.

# Default server creation names
# {0} will be replaced by a number if the given name is already being used
defaultServerProjectName=Servers{0}

serverStartError=Error received while starting the server

# Used when a name can't be found
elementUnknownName=<unknown>

columnName=Name
columnType=Type

add=Add...
edit=Edit...
remove=Remove
search=Search...


# --------------- Editor support ---------------

serverEditorOverviewPage=Overview
serverEditorOverviewPageTitle=Server Overview
serverEditorOverviewSection=General
serverEditorOverviewDescription=Specify the host name and other settings.
serverEditorOverviewServerName=Server name:
serverEditorOverviewServerNameCommand=set server name
serverEditorOverviewServerNameDescription=Set the server name
serverEditorOverviewServerConfigurationPath=Server configuration path:
serverEditorOverviewServerHostname=Host name:
serverEditorOverviewServerHostnameCommand=set host name
serverEditorOverviewServerHostnameDescription=Set the host name
serverEditorOverviewRuntime=Runtime:
serverEditorOverviewRuntimeCommand=set runtime
serverEditorOverviewRuntimeDescription=Set the runtime

# Menu items. {0} will be replaced by one of the xxxEditorActionXxx fields
# from below. @Ctrl+Z is the menu mnemonic
editorUndoEnabled=Undo {0}@Ctrl+Z
editorUndoDisabled=Undo@Ctrl+Z
editorRedoEnabled=Redo {0}@Ctrl+Y
editorRedoDisabled=Redo@Ctrl+Y

editorSaveErrorDialog=Save Problems
editorSaveErrorMessage=Error while saving. {0}

editorReadOnly=Read Only
editorWritable=Writable
editorReadOnlyFiles=Read Only files: {0}

editorServerEditor=Server Editor
editorPromptIrreversible=This operation cannot be undone. Do you want to proceed?

# message if a dirty resource is deleted
editorResourceDeleteTitle=Server Resource Deleted
editorResourceDeleteBothMessage=The server {0} and the server configuration {1} have been deleted from the file system. Do you want to save your changes or close the editor without saving?
editorResourceDeleteServerMessage=The server {0} has been deleted from the file system. Do you want to save your changes or close the editor without saving?
editorResourceDeleteServerConfigurationMessage=The server configuration {0} has been deleted from the file system. Do you want to save your changes or close the editor without saving?
editorResourceDeleteSave=Save

editorResourceModifiedTitle=File Changed
editorServerModifiedMessage=The server has been changed on the file system. Do you want to load the changes?
editorServerConfigurationModifiedMessage=The server configuration has been changed on the file system. Do you want to load the changes?

editorValidateEditFailureMessage=The server resource cannot be edited.
editorReadOnlyMessage=File(s) being edited have become read-only. The editor will become read-only and changes will be lost.

editorResourceWarnTitle=Server Modification Warning
editorResourceWarnMessage=The resource you are modifying is read-only. All changes will be lost because the resource cannot be saved. 