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

extensionPointServerStartup=Server Startup
extensionPointModuleTypes=Module Types
extensionPointRuntimeTypes=Runtime Types
extensionPointRuntimeTargetHandlers=Runtime Target Handlers
extensionPointRuntimeLocators=Runtime Locators
extensionPointServerTypes=Server Types
extensionPointServerLocators=Server Locators
extensionPointServerConfigurationTypes=Server Configuration Types
extensionPointModuleFactories=Module Factories
extensionPointModuleObjectAdapters=Module Artifact Adapters
extensionPointLaunchableAdapters=Launchable Adapters
extensionPointClients=Clients
extensionPointServerTasks=Server Tasks
extensionPointServerMonitors=Server Monitors

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

# General tasks
copyingTask=Copying from {0} to {1}
unZippingTask=Unzipping {0}
expandingTask=Expanding {0}
savingTask=Saving {0}
deletingTask=Deleting {0}
copyingTask=File copied successfully to {0}

taskPerforming=Performing Tasks
taskModifyModules=Adding and/or removing projects.

publishingTask=Publishing to {0}...
publishingStatus=Publishing status
publishingStop=Disconnecting from server

publishingProject=Publishing: {0}

publishingCancelled=Publishing cancelled

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

# Error Messages
errorPublishing=Could not publish to the server.
errorNoConfiguration=The server has no configuration.
errorLoading=Error loading from {0}.
errorSaving=Could not save to {0}.
errorCopyingFile=Error copying file to {0}: {1}
errorModuleRestartFailed=Could not restart the module.
errorWorkingCopyTimestamp=Could not save because the file has been modified since the start of editting.
errorRuntimeName=Enter a name for the runtime.
errorDuplicateRuntimeName=Name is already in use.
errorStartFailed=Could not start the server.

# Default server creation names
# {0} will be replaced by a number if the given name is already being used
defaultServerProjectName=Servers{0}
defaultRuntimeName={0}
defaultRuntimeName2={0} ({1})
defaultServerName={0} @ {1}
defaultServerName2={0} @ {1} ({2})
defaultServerName3={0}
defaultServerName4={0} ({1})
defaultServerConfigurationName={0}
defaultServerConfigurationName2={0} ({1})

# Used when a name can't be found
defaultVendor=Basic
defaultVersion=Basic
moduleTypeUnknown=Unknown module

# null launchable
nullLaunchableClient=Do nothing
nullLaunchableClientDescription=Do not launch anything after starting the server.
