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

ValidateEditChecker_failed= Team provider refused file modification.

Changes_validateEdit= Team provider refused file modification.

RefactoringCorePlugin_internal_error=Internal Error
RefactoringCorePlugin_creation_error=ERROR: Could not create refactoring creator from extension ''{1}'' of extension point ''{0}''.
RefactoringCorePlugin_listener_removed=Listener removed due to the following exception
RefactoringCorePlugin_duplicate_warning=WARNING: Duplicate extension with id ''{0}'' for extension point ''{1}''
RefactoringCorePlugin_missing_attribute=ERROR: Extension point ''{0}'' contains extension with missing attribute ''{1}''
RefactoringCorePlugin_participant_removed=Participant {0} removed due to the following exception
RefactoringCorePlugin_missing_class_attribute=ERROR: Refactoring creator contribution from extension ''{1}'' of extension point ''{0}'' has no ''{2}'' attribute.

Resources_outOfSyncResources= Some resources are out of sync
Resources_outOfSync= Resource ''{0}'' is out of sync with file system.
Resources_modifiedResources= There are modified resources
Resources_fileModified= File ''{0}'' has been modified since the beginning of the operation

NullChange_name= No operation change

TextChanges_error_existing=The file ''{0}'' already exists in the workspace.
TextChanges_error_not_existing=''{0}'' does not exist anymore.
TextChanges_error_content_changed=The content of ''{0}'' has changed.
TextChanges_error_unsaved_changes=The file ''{0}'' has unsaved changes.
TextChanges_error_read_only=The file ''{0}'' is read-only.
TextChanges_error_outOfSync= The file ''{0}'' is out of sync with the underlying file system.
TextChanges_error_document_content_changed= The content of the document has changed.

BufferValidationState_no_character_encoding=Cannot determine the character encoding of ''{0}''.
BufferValidationState_character_encoding_changed=The character encoding of ''{0}'' has changed.

CheckConditionContext_error_checker_exists= A checker of type ''{0}'' already exists.

CompositeChange_performingChangesTask_name=Performing changes...

ProcessorBasedRefactoring_initial_conditions=Checking preconditions...
ProcessorBasedRefactoring_check_condition_participant_failed=The participant ''{0}'' caused an internal error and has been disabled for this refactoring. See the error log for more details.
ProcessorBasedRefactoring_final_conditions=Checking preconditions...
ProcessorBasedRefactoring_create_change=Creating workspace modifications...

ParticipantDescriptor_correct=Syntactically correct rename participant element
ParticipantDescriptor_error_id_missing=Disabling refactoring participant: the id attribute is missing
ParticipantDescriptor_error_name_missing=Disabling refactoring participant: Refactoring participant ''{0}'' is missing ''name'' attribute.
ParticipantDescriptor_error_class_missing=Disabling refactoring participant: Refactoring participant ''{0}'' is missing ''class'' attribute.

ParticipantExtensionPoint_participant_removed= The participant ''{0}'' has caused a problem and has been removed from the system. See the error log for more details.
ParticipantExtensionPoint_wrong_type= The participant ''{0}'' does not extend the required type ''{1}''.

RefactoringUndoContext_label=Refactoring Undo Context

Refactoring_execute_label=Refactoring - Execute
Refactoring_undo_label=Refactoring - Undo
Refactoring_redo_label=Refactoring - Redo

UndoableOperation2ChangeAdapter_error_message=Change execution failed
UndoableOperation2ChangeAdapter_no_undo_available=No undo available
UndoableOperation2ChangeAdapter_no_redo_available=No redo available

UnknownRefactoringDescriptor_initialization_error=Cannot initialize an unknown refactoring.
UnknownRefactoringDescriptor_cannot_create_refactoring=Cannot create a refactoring from the unknown refactoring descriptor.

UndoManager2_no_change=Top most undoable operation doesn't represent a refactoring change

RefactoringHistoryService_retrieving_history=Retrieving refactoring history...
RefactoringHistoryManager_non_string_argument=The argument map contains an argument with key/value which are not strings
RefactoringHistoryService_updating_history=Updating refactoring history...
RefactoringHistoryManager_empty_argument=The argument map contains an argument empty with key/value
RefactoringHistoryService_resolving_information=Resolving refactoring information...
RefactoringHistoryService_deleting_refactorings=Deleting refactorings from history...

RefactoringSessionReader_unsupported_version_information=Unsupported version of refactoring history.
RefactoringSessionReader_missing_version_information=Missing version information while reading refactoring history.

PerformRefactoringHistoryOperation_perform_refactorings=Performing refactorings...

DefaultRefactoringDescriptor_initialization_error=The refactoring ''{0}'' cannot be initialized
