###############################################################################
# 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=IBM

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
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.\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. 