Bug 14368 Create getter and setter insert code into read-only file
1. Create a class C as follow: package jp1; public class C { private int id; } 2. Close it and mark it as read only 3. Reopen it and you should not be able to modify anything 4. From the outline view, select "id - int" and right mouse click and select "Create getter and setter". 5. The class becomes package jp1; public class C { private int id; /** * Gets the id. * @return Returns a int */ public int getId() { return id; } /** * Sets the id. * @param id The id to set */ public void setId(int id) { this.id = id; } } and the editor is dirty, but you cannot save it until clear the read-only flag.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/actions/AddJavaDocStubAction.java
CodeGenerationSettings settings= JavaPreferencesSettings.getCodeGenerationSettings();
			AddJavaDocStubOperation op= new AddJavaDocStubOperation(workingCopyMembers, settings);
			ProgressMonitorDialog dialog= new ProgressMonitorDialog(JavaPlugin.getActiveWorkbenchShell());
			dialog.run(false, true, new WorkbenchRunnableAdapter(op));
					
			EditorUtility.revealInEditor(editor, members[0]);	
		} catch (InvocationTargetException e) {
			JavaPlugin.log(e);
			showError(JavaUIMessages.getString("AddJavaDocStubsAction.error.actionFailed")); 
		} catch (InterruptedException e) {
			
		} catch (CoreException e) {
			JavaPlugin.log(e.getStatus());
			showError(JavaUIMessages.getString("AddJavaDocStubsAction.error.actionFailed")); 
			return;
		}
	}
	
	private void showError(String message) {
		Shell shell= JavaPlugin.getActiveWorkbenchShell();
		String title= JavaUIMessages.getString("AddJavaDocStubsAction.error.dialogTitle"); 
		MessageDialog.openError(shell, title, message);
	}
	
	private IMember[] getSelectedMembers() {
		ISelection sel= fSelectionProvider.getSelection();
		if (sel instanceof IStructuredSelection) {
			List elements= ((IStructuredSelection)sel).toList();
			int nElements= elements.size();
			if (nElements > 0) {