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

# Cache preference page strings.
_UI_CONFIRM_CLEAR_CACHE_DIALOG_TITLE          = Clear Cache?
_UI_CONFIRM_CLEAR_CACHE_DIALOG_MESSAGE        = Delete all cache entries?
_UI_CONFIRM_DELETE_CACHE_ENTRY_DIALOG_TITLE   = Delete Entry?
_UI_CONFIRM_DELETE_CACHE_ENTRY_DIALOG_MESSAGE = Delete all selected cache entries?
_UI_BUTTON_CLEAR_CACHE                        = Clear Cache
_UI_BUTTON_DELETE_ENTRY                       = Delete Entry
_UI_PREF_CACHE_ENTRIES_TITLE                  = Cache entries:
_UI_PREF_CACHE_CACHE_OPTION                   = Disable caching
_UI_PREF_CACHE_ABOUT                          = Manage cached resources.

# Cache monitor strings.
_UI_CACHE_MONITOR_NAME                        = Caching Remote Resources
_UI_CACHE_MONITOR_CACHING                     = Caching {0}