###############################################################################
# Copyright (c) 2003, 2005 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
###############################################################################

#External Messages for EN locale
CONSOLE_PROMPT=osgi> 
CONSOLE_ID=id
CONSOLE_MORE=-- More...Press Enter to Continue...
CONSOLE_HELP_CONTROLLING_CONSOLE_HEADING=---Controlling the Console---
CONSOLE_HELP_MORE=More prompt for console output
CONSOLE_HELP_DISCONNECT=Disconnects from telnet session
CONSOLE_CONFIRM_MORE=Use 'more' prompt?
CONSOLE_MORE_ENTER_LINES=Enter maximum number of lines to scroll:
CONSOLE_CONFIRM_DISCONNECT=Disconnect from console?
CONSOLE_CONFIRM=Confirm
CONSOLE_CONFIRM_VALUES=y/n; default=
CONSOLE_Y=y
CONSOLE_N=n
CONSOLE_ERROR_READING_RESOURCE=Error reading {0}
CONSOLE_RESOURCE_NOT_IN_BUNDLE={0} not found in {1}
CONSOLE_NESTED_EXCEPTION=Nested Exception:
CONSOLE_PROMPT_DEFAULT=default
CONSOLE_INVALID_INPUT=Invalid input.
CONSOLE_TOO_MUCH_INVALID_INPUT=Too much invalid input.
CONSOLE_LINES_TO_SCROLL_NEGATIVE_ERROR=Lines to scroll is set to a negative number
CONSOLE_HELP_VALID_COMMANDS_HEADER=Valid commands:
CONSOLE_HELP_CONTROLLING_FRAMEWORK_HEADER=Controlling the OSGi framework
CONSOLE_HELP_LAUNCH_COMMAND_DESCRIPTION=start the OSGi Framework
CONSOLE_HELP_SHUTDOWN_COMMAND_DESCRIPTION=shutdown the OSGi Framework
CONSOLE_HELP_CLOSE_COMMAND_DESCRIPTION=shutdown and exit
CONSOLE_HELP_EXIT_COMMAND_DESCRIPTION=exit immediately (System.exit)
CONSOLE_HELP_GC_COMMAND_DESCRIPTION=perform a garbage collection
CONSOLE_HELP_INIT_COMMAND_DESCRIPTION=uninstall all bundles
CONSOLE_HELP_SETPROP_COMMAND_DESCRIPTION=set the OSGi property
CONSOLE_HELP_CONTROLLING_BUNDLES_HEADER=Controlling Bundles
CONSOLE_HELP_INSTALL_COMMAND_DESCRIPTION=install and optionally start bundle from the given URL
CONSOLE_HELP_UNINSTALL_COMMAND_DESCRIPTION=uninstall the specified bundle(s)
CONSOLE_HELP_START_COMMAND_DESCRIPTION=start the specified bundle(s)
CONSOLE_HELP_STOP_COMMAND_DESCRIPTION=stop the specified bundle(s)
CONSOLE_HELP_REFRESH_COMMAND_DESCRIPTION=refresh the packages of the specified bundles
CONSOLE_HELP_UPDATE_COMMAND_DESCRIPTION=update the specified bundle(s)
CONSOLE_HELP_DISPLAYING_STATUS_HEADER=Displaying Status
CONSOLE_HELP_STATUS_COMMAND_DESCRIPTION=display installed bundles and registered services
CONSOLE_HELP_SS_COMMAND_DESCRIPTION=display installed bundles (short status)
CONSOLE_HELP_SERVICES_COMMAND_DESCRIPTION=display registered service details
CONSOLE_HELP_PACKAGES_COMMAND_DESCRIPTION=display imported/exported package details
CONSOLE_HELP_BUNDLES_COMMAND_DESCRIPTION=display details for all installed bundles
CONSOLE_HELP_BUNDLE_COMMAND_DESCRIPTION=display details for the specified bundle(s)
CONSOLE_HELP_HEADERS_COMMAND_DESCRIPTION=print bundle headers
CONSOLE_HELP_LOG_COMMAND_DESCRIPTION=display log entries
CONSOLE_HELP_EXTRAS_HEADER=Extras
CONSOLE_HELP_EXEC_COMMAND_DESCRIPTION=execute a command in a separate process and wait
CONSOLE_HELP_FORK_COMMAND_DESCRIPTION=execute a command in a separate process
CONSOLE_HELP_KEYVALUE_ARGUMENT_DESCRIPTION=<key>=<value>
CONSOLE_HELP_FILTER_ARGUMENT_DESCRIPTION={filter}
CONSOLE_HELP_PACKAGES_ARGUMENT_DESCRIPTION={<pkgname>|<id>|<location>}
CONSOLE_HELP_IDLOCATION_ARGUMENT_DESCRIPTION=(<id>|<location>)
CONSOLE_HELP_OPTIONAL_IDLOCATION_ARGUMENT_DESCRIPTION={(<id>|<location>)}
CONSOLE_HELP_COMMAND_ARGUMENT_DESCRIPTION=<command>
CONSOLE_NO_BUNDLE_SPECIFIED_ERROR=No bundle(s) specified!
CONSOLE_NOTHING_TO_INSTALL_ERROR=Nothing to install!
CONSOLE_NO_INSTALLED_BUNDLES_ERROR=No installed bundles.
CONSOLE_BUNDLE_ID_MESSAGE=Bundle id is 
CONSOLE_FRAMEWORK_IS_LAUNCHED_MESSAGE=Framework is launched.
CONSOLE_FRAMEWORK_IS_SHUTDOWN_MESSAGE=Framework is shutdown.
CONSOLE_ID_MESSAGE=Id={0}
CONSOLE_BUNDLE_LOCATION_MESSAGE=Bundle Location
CONSOLE_STATE_BUNDLE_FILE_NAME_HEADER=State       Bundle File Name
CONSOLE_REGISTERED_SERVICES_MESSAGE=Registered Services
CONSOLE_REGISTERED_BY_BUNDLE_MESSAGE=Registered by bundle:
CONSOLE_BUNDLES_USING_SERVICE_MESSAGE=Bundles using service:
CONSOLE_NO_BUNDLES_USING_SERVICE_MESSAGE=No bundles using service.
CONSOLE_NO_REGISTERED_SERVICES_MESSAGE=No registered services.
CONSOLE_NO_EXPORTED_PACKAGES_MESSAGE=No exported packages
CONSOLE_NO_IMPORTED_PACKAGES_MESSAGE=No imported packages
CONSOLE_REMOVAL_PENDING_MESSAGE=removal pending
CONSOLE_IMPORTS_MESSAGE=imports
CONSOLE_STALE_MESSAGE=stale
CONSOLE_NO_EXPORTED_PACKAGES_NO_PACKAGE_ADMIN_MESSAGE=No exported packages [PackageAdmin service is not registered]
CONSOLE_SERVICES_IN_USE_MESSAGE=Services in use:
CONSOLE_NO_SERVICES_IN_USE_MESSAGE=No services in use.
CONSOLE_STATUS_MESSAGE=Status={0}
CONSOLE_DATA_ROOT_MESSAGE=Data Root={0}
CONSOLE_EXPORTED_PACKAGES_MESSAGE=Exported packages
CONSOLE_IMPORTED_PACKAGES_MESSAGE=Imported packages
CONSOLE_EXPORTED_REMOVAL_PENDING_MESSAGE=[exported(removal pending)]
CONSOLE_EXPORTED_MESSAGE=[exported]
CONSOLE_STALE_MESSAGE=stale
CONSOLE_DEBUG_MESSAGE=Debug
CONSOLE_INFO_MESSAGE=Info
CONSOLE_WARNING_MESSAGE=Warn
CONSOLE_ERROR_MESSAGE=Error
CONSOLE_LOGSERVICE_NOT_REGISTERED_MESSAGE=The LogReaderService is not registered.
CONSOLE_TOTAL_MEMORY_MESSAGE=Total memory:
CONSOLE_FREE_MEMORY_BEFORE_GARBAGE_COLLECTION_MESSAGE=Free memory before GC:
CONSOLE_FREE_MEMORY_AFTER_GARBAGE_COLLECTION_MESSAGE=Free memory after GC:
CONSOLE_MEMORY_GAINED_WITH_GARBAGE_COLLECTION_MESSAGE=Memory gained with GC:
CONSOLE_FRAMEWORK_LAUNCHED_PLEASE_SHUTDOWN_MESSAGE=Framework is launched. Please shutdown framework first.
CONSOLE_INVALID_BUNDLE_SPECIFICATION_ERROR=Invalid bundle specification.
CONSOLE_CAN_NOT_REFRESH_NO_PACKAGE_ADMIN_ERROR=Cannot refresh [PackageAdmin service is not registered]
CONSOLE_CAN_NOT_USE_STARTLEVEL_NO_STARTLEVEL_SVC_ERROR=Cannot use Startlevel commands [Startlevel service is not registered]
CONSOLE_NO_COMMAND_SPECIFIED_ERROR=No command specified
CONSOLE_EXECUTED_RESULT_CODE_MESSAGE=Executed ({0}); result code = {1}
CONSOLE_STARTED_IN_MESSAGE=Started({0}) in {1}
CONSOLE_BUNDLE_HEADERS_TITLE=Bundle headers:
CONSOLE_SYSTEM_PROPERTIES_TITLE=System properties:
CONSOLE_NO_PARAMETERS_SPECIFIED_TITLE=No parameters specified:
CONSOLE_SETTING_PROPERTIES_TITLE=Setting Properties:
CONSOLE_STATE_BUNDLE_TITLE=State       Bundle
CONSOLE_THREADGROUP_TITLE=ThreadGroupType:   Name:                 ParentGroup:   MaxP: Threads:
CONSOLE_THREADTYPE_TITLE=ThreadType:        Name:                 ThreadGroup:   Prio:
CONSOLE_CANNOT_FIND_BUNDLE_ERROR=Cannot find bundle {0}
CONSOLE_INSTALLED_MESSAGE=INSTALLED   
CONSOLE_UNINSTALLED_MESSAGE=UNINSTALLED 
CONSOLE_RESOLVED_MESSAGE=RESOLVED    
CONSOLE_STARTING_MESSAGE=STARTING    
CONSOLE_STOPPING_MESSAGE=STOPPING     
CONSOLE_ACTIVE_MESSAGE=ACTIVE      
CONSOLE_LISTENING_ON_PORT=Listening on port {0} ... 
CONSOLE_TELNET_CONNECTION_REFUSED=Connection refused.
CONSOLE_TELNET_CURRENTLY_USED=Telnet is currently being used.
CONSOLE_TELNET_ONE_CLIENT_ONLY=Only one client can access at a time.
STARTLEVEL_HELP_HEADING=Controlling Start Level
STARTLEVEL_HELP_SL=display the start level for the specified bundle, or for the framework if no bundle specified
STARTLEVEL_HELP_SETFWSL=set the framework start level
STARTLEVEL_HELP_SETBSL=set the start level for the bundle(s)
STARTLEVEL_HELP_SETIBSL=set the initial bundle start level
STARTLEVEL_FRAMEWORK_ACTIVE_STARTLEVEL=Framework Active Start Level = {0}
STARTLEVEL_NO_STARTLEVEL_GIVEN=No Start Level given.
STARTLEVEL_NO_STARTLEVEL_OR_BUNDLE_GIVEN=No Bundle or Start Level given.
STARTLEVEL_INITIAL_BUNDLE_STARTLEVEL=Initial Bundle Start Level = {0}
STARTLEVEL_BUNDLE_STARTLEVEL=Bundle {0} Start Level = {1}
STARTLEVEL_ARGUMENT_DESCRIPTION = <start level>
STARTLEVEL_IDLOCATION_ARGUMENT_DESCRIPTION = <start level> (<id>|<location>)
STARTLEVEL_POSITIVE_INTEGER=Startlevel must be a positive integer.
CONSOLE_NAMED_CLASS_SPACE_MESSAGE=Named class space
CONSOLE_PROVIDED_MESSAGE=[provided]
CONSOLE_HOST_MESSAGE=Host bundles
CONSOLE_NO_HOST_MESSAGE=No host bundles
CONSOLE_FRAGMENT_MESSAGE=Fragment bundles
CONSOLE_NO_FRAGMENT_MESSAGE=No fragment bundles
CONSOLE_NO_NAMED_CLASS_SPACES_MESSAGE=No named class spaces
CONSOLE_REQUIRED_BUNDLES_MESSAGE=Required bundles
CONSOLE_NO_REQUIRED_BUNDLES_MESSAGE=No required bundles
CONSOLE_REQUIRES_MESSAGE=[requires]
CONSOLE_HELP_PROFILE_HEADING=---Controlling the Profiling---
CONSOLE_HELP_PROFILELOG_DESCRIPTION=Display & flush the profile log messages
