#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 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 implementation.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# Error Messages
invalidNameError_msg=The name ''{0}'' is invalid. A method element name cannot contain these characters: \\ / : * ? " < > |
objNotFoundError_msg=Could not find object with id ''{0}''
loadLibraryError_msg=Errors encountered while loading method library:
loadLibraryError_details=\ \ line: {0}, column: {1}, msg: {2}
restoreResourceError_msg=Could not restore resource ''{0}''
FileManager_fileReadOnly=File ''{0}'' is read-only
ErrMsg_CouldNotDelete=Could not delete {0}. {1}
renameError_msg=Could not rename ''{0}'' to ''{1}''
backupError_msg=Could not backup up resource ''{0}''
marker_err_cannotResolveProxy=Could not resolve proxy {0}
modifyFileError_msg=Cannot modify file ''{0}''
filePathNameTooLong_msg=Cannot save resource. File path name too long (exceeding 255) ''{0}''
loadResourceError_msg=Could not load resource ''{0}''
loadResourceErrorWithReason_msg=Could not load resource ''{0}''. Reason: {1}
invalidLibraryFileError_msg=Invalid method library file:
fileNotFoundError_msg=Could not locate any method library file in workspace ''{0}''
normalizeURIError_msg=Could not find the normalized URI for ''{0}''
moveError_msg=Could not move ''{0}'' to ''{1}''. The destination already exists.
modifyReadOnlyFileError_msg=Cannot modify read-only file(s): {0}
moveResourceError_msg=Resource ''{0}'' is involved in a persistence operation that has not been committed.
modifyFilesError_msg=Could not modify one or more files
resourceOutOfSynch_msg=Resource is out of synch and needs to be reloaded: {0}
resourceAutoRefreshJob_name=Resource Auto-Refresh
loadConfiguration_couldNotLoad_logMsg=Could not load file: {0}. The method configuration in this file has duplicate GUID.
loadConfiguration_notConfigFile_logMsg=Not a method configuration file: {0}

# Progress Messages
loadLibraryTask_name=Loading method library...
moveDataTask_name=Moving the data...
saveLibraryTask_name=Saving method library...
loadResourcesTask_name=Loading all resources into memory...
migratingDiagram_name=Migrating diagrams...
migrateContentDescriptionsTask_name=Migrating process content descriptions...
fixPresentationNameTask_name=Fixing empty presentation names...
UnresolvedProxyMarkerManager_couldNotResolveProxy=Could not resolve proxy ''{0}''
refreshLibraryFilesTask_name=Refreshing library files in workspace
cannot_create_dir_msg=Cannot create directory ''{0}''.
unresolvedProxyLoggerJob_name=Unresolved Proxy Logger
