1 package org.argeo.tracker.ui;
2
3 import javax.jcr.Node;
4
5 import org.argeo.activities.ActivitiesService;
6 import org.argeo.connect.UserAdminService;
7 import org.argeo.connect.ui.AppUiService;
8 import org.argeo.connect.util.ConnectJcrUtils;
9 import org.argeo.tracker.TrackerService;
10 import org.argeo.tracker.TrackerTypes;
11 import org.argeo.tracker.ui.dialogs.ConfigureComponentWizard;
12 import org.argeo.tracker.ui.dialogs.ConfigureIssueWizard;
13 import org.argeo.tracker.ui.dialogs.ConfigureMilestoneWizard;
14 import org.argeo.tracker.ui.dialogs.ConfigureProjectWizard;
15 import org.argeo.tracker.ui.dialogs.ConfigureTaskWizard;
16 import org.argeo.tracker.ui.dialogs.ConfigureVersionWizard;
17 import org.eclipse.jface.wizard.Wizard;
18 import org.eclipse.swt.graphics.Image;
19
20
21
22
23
24
25 public class TrackerUiService implements AppUiService {
26
27 private UserAdminService userAdminService;
28 private TrackerService trackerService;
29 private ActivitiesService activitiesService;
30
31 @Override
32 public Wizard getCreationWizard(Node node) {
33 if (ConnectJcrUtils.isNodeType(node, TrackerTypes.TRACKER_ISSUE))
34 return new ConfigureIssueWizard(userAdminService, trackerService, node);
35 else if (ConnectJcrUtils.isNodeType(node, TrackerTypes.TRACKER_TASK))
36 return new ConfigureTaskWizard(userAdminService, activitiesService, trackerService, null, node);
37 else if (ConnectJcrUtils.isNodeType(node, TrackerTypes.TRACKER_MILESTONE))
38 return new ConfigureMilestoneWizard(userAdminService, trackerService, node);
39 else if (ConnectJcrUtils.isNodeType(node, TrackerTypes.TRACKER_VERSION))
40 return new ConfigureVersionWizard(trackerService, node);
41 else if (ConnectJcrUtils.isNodeType(node, TrackerTypes.TRACKER_COMPONENT))
42 return new ConfigureComponentWizard(trackerService, node);
43
44
45
46
47 else if (ConnectJcrUtils.isNodeType(node, TrackerTypes.TRACKER_PROJECT))
48 return new ConfigureProjectWizard(userAdminService, trackerService, node);
49 return null;
50 }
51
52 @Override
53 public Image getIconForType(Node entity) {
54 return null;
55 }
56
57 public void setUserAdminService(UserAdminService userAdminService) {
58 this.userAdminService = userAdminService;
59 }
60
61 public void setTrackerService(TrackerService trackerService) {
62 this.trackerService = trackerService;
63 }
64
65 public void setActivitiesService(ActivitiesService activitiesService) {
66 this.activitiesService = activitiesService;
67 }
68 }