Project

General

Profile

Actions

Task #4793

closed

duplicate code

Added by Alexey Demakov over 10 years ago. Updated almost 10 years ago.

Status:
Closed
Priority:
Normal
Category:
-
Target version:
Start date:
03/25/2014
Due date:
% Done:

100%

Estimated time:
Detected in build:
svn
Published in build:
0.15.197

Description

методы isEnabled в
requality\src\java\com\unitesk\requality\eclipse\handlers\copypaste\EclipseCopyHandler.java
requality\src\java\com\unitesk\requality\eclipse\handlers\copypaste\EclipsePasteHandler.java

отличаются только константами "org.eclipse.ui.edit.copy" и "org.eclipse.ui.edit.paste". Эти же константы используются при создании хэндлеров в классах ReqMarker, JSEditor и ReportViewer:

handlerService
.activateHandler("org.eclipse.ui.edit.copy", new EclipseCopyHandler());
handlerService
.activateHandler("org.eclipse.ui.edit.paste", new EclipsePasteHandler());

Предлагаю:
1. Добавить в классы EclipseCopyHandler и EclipsePasteHandler публичные именованные константы для этих строк и именно их использовать в проекте.
2. Создать общий базовый класс, где объявить абстрактный виртуальный метод типа getCommandId(), который в наследниках возвращает необходимое значение.
3. Перенести метод isEnabled в общий базовый класс, заменив использование констант на вызов getCommandId()

Actions

Also available in: Atom PDF