Я разрабатываю плагин Eclipse, который требуется для чтения содержимого редактора каждую минуту. Поэтому я хочу кнопку, чтобы запустить этот процесс и одну, чтобы остановить его. Поскольку я новичок в разработке плагинов, я попытался обойти шаблон, приведенный в eclipse. Но приложение во время выполнения вылетает.
Поскольку я новичок в разработке плагинов, я попытался обойти шаблон, заданный в eclipse. Но во время выполнения приложения происходит сбой.
public class SampleHandler extends AbstractHandler {
int filename=0;
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
//IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);
for (int i=0; i<10;i++) {
/*MessageDialog.openInformation(
window.getShell(),
"TestEditorReader",
"Running in background"); */// function call to print in the window
PrintWriter writer = null;
try {
writer = new PrintWriter(filename+"file.txt", "UTF-8");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
filename++;
writer.println(getCurrentEditorContent()); // function call to store it in files
writer.close();
try {
Thread.sleep(10000);
}
catch (InterruptedException ie) {
}
}
return null;
}
public String getCurrentEditorContent() {
final IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
.getActiveEditor();
if (!(editor instanceof ITextEditor)) return null;
ITextEditor ite = (ITextEditor)editor;
IDocument doc = ite.getDocumentProvider().getDocument(ite.getEditorInput());
return doc.get();
}
}