1 package org
.argeo
.suite
.workbench
;
7 import org
.argeo
.connect
.ui
.workbench
.AppWorkbenchService
;
8 import org
.argeo
.eclipse
.ui
.EclipseUiUtils
;
9 import org
.argeo
.suite
.workbench
.commands
.OpenEntityEditor
;
10 import org
.argeo
.suite
.workbench
.parts
.DefaultDashboardEditor
;
11 import org
.eclipse
.jface
.wizard
.Wizard
;
12 import org
.eclipse
.swt
.graphics
.Image
;
14 /** Centralize workbench services from the various base apps */
15 public class AsWorkbenchServiceImpl
implements AppWorkbenchService
{
17 // Injected known AppWorkbenchServices: order is important, first found
18 // result will be returned by the various methods.
19 private List
<AppWorkbenchService
> knownAppWbServices
;
22 public String
getDefaultEditorId() {
23 return DefaultDashboardEditor
.ID
;
27 public String
getOpenEntityEditorCmdId() {
28 // String result = null;
29 // for (AppWorkbenchService appWbService : knownAppWbServices) {
30 // result = appWbService.getOpenEntityEditorCmdId();
31 // if (EclipseUiUtils.notEmpty(result))
34 return OpenEntityEditor
.ID
;
38 public String
getOpenSearchEntityEditorCmdId() {
40 for (AppWorkbenchService appWbService
: knownAppWbServices
) {
41 result
= appWbService
.getOpenSearchEntityEditorCmdId();
42 if (EclipseUiUtils
.notEmpty(result
))
49 public String
getEntityEditorId(Node entity
) {
51 for (AppWorkbenchService appWbService
: knownAppWbServices
) {
52 result
= appWbService
.getEntityEditorId(entity
);
53 if (EclipseUiUtils
.notEmpty(result
))
60 public String
getSearchEntityEditorId(String nodeType
) {
62 for (AppWorkbenchService appWbService
: knownAppWbServices
) {
63 result
= appWbService
.getSearchEntityEditorId(nodeType
);
64 if (EclipseUiUtils
.notEmpty(result
))
71 public Image
getIconForType(Node entity
) {
73 for (AppWorkbenchService appWbService
: knownAppWbServices
) {
74 result
= appWbService
.getIconForType(entity
);
82 public Wizard
getCreationWizard(Node node
) {
84 for (AppWorkbenchService appWbService
: knownAppWbServices
) {
85 result
= appWbService
.getCreationWizard(node
);
93 public String
getOpenFileCmdId() {
97 /* DEPENDENCY INJECTION */
98 public void setKnownAppWbServices(List
<AppWorkbenchService
> knownAppWbServices
) {
99 this.knownAppWbServices
= knownAppWbServices
;