import oic.simulator.serviceprovider.manager.ResourceManager;
import oic.simulator.serviceprovider.resource.ObserverDetail;
import oic.simulator.serviceprovider.resource.SimulatorResource;
+import oic.simulator.serviceprovider.utils.Constants;
import org.eclipse.jface.viewers.CellEditor;
import org.eclipse.jface.viewers.CheckboxCellEditor;
import org.eclipse.ui.part.ViewPart;
public class ResourceObserverView extends ViewPart {
- public static final String VIEW_ID = "oic.simulator.serviceprovider.view.observer";
+ public static final String VIEW_ID = "oic.simulator.serviceprovider.view.observer";
private TableViewer tblViewer;
- private final String[] columnHeaders = {
- "Client Address", "Port", "Notify" };
+ private final String[] columnHeaders = {
+ "Client Address", "Port", "Notify" };
- private final Integer[] columnWidth = {
- 150, 75, 50 };
+ private final Integer[] columnWidth = { 150, 75, 50 };
private IResourceSelectionChangedUIListener resourceSelectionChangedListener;
private IObserverListChangedUIListener resourceObserverListChangedListener;
- private ResourceManager resourceManager;
-
- private static final Image NOTIFY_BUTTON_UNSELECTED = Activator
- .getDefault()
- .getImage(
- "icons/button_free.PNG");
-
- private static final Image NOTIFY_BUTTON_SELECTED = Activator
- .getDefault()
- .getImage(
- "icons/button_pressed.PNG");
+ private ResourceManager resourceManagerRef;
public ResourceObserverView() {
- resourceManager = Activator.getDefault().getResourceManager();
+ resourceManagerRef = Activator.getDefault().getResourceManager();
resourceSelectionChangedListener = new IResourceSelectionChangedUIListener() {
public void run() {
if (null != tblViewer) {
changeButtonStatus();
- updateViewer(getData(resourceManager
+ updateViewer(getData(resourceManagerRef
.getCurrentResourceInSelection()));
}
}
@Override
public void run() {
- System.out.println("UI callback - observer");
if (null == resourceURI) {
return;
}
- SimulatorResource resource = resourceManager
+ SimulatorResource resource = resourceManagerRef
.getCurrentResourceInSelection();
if (null == resource) {
return;
}
- System.out
- .println("UI callback - observer - this resource");
if (resource.getResourceURI().equals(resourceURI)) {
if (null != tblViewer) {
updateViewer(getData(resource));
}
private void updateViewer(Map<Integer, ObserverDetail> observer) {
- System.out.println(observer);
if (null != tblViewer) {
Table tbl = tblViewer.getTable();
if (null != observer && observer.size() > 0) {
addManagerListeners();
+ // Check whether there is any resource selected already
+ Map<Integer, ObserverDetail> observerList = getData(resourceManagerRef
+ .getCurrentResourceInSelection());
+ if (null != observerList) {
+ updateViewer(observerList);
+ }
}
public void createColumns(TableViewer tableViewer) {
@SuppressWarnings("unchecked")
Map.Entry<Integer, ObserverDetail> observer = (Map.Entry<Integer, ObserverDetail>) element;
if (observer.getValue().isClicked()) {
- return NOTIFY_BUTTON_SELECTED;
+ return Activator.getDefault().getImageRegistry()
+ .get(Constants.NOTIFY_BUTTON_SELECTED);
}
- return NOTIFY_BUTTON_UNSELECTED;
+ return Activator.getDefault().getImageRegistry()
+ .get(Constants.NOTIFY_BUTTON_UNSELECTED);
}
});
notifyColumn.setEditingSupport(new NotifyEditor(tableViewer));
}
private void addManagerListeners() {
- resourceManager
+ resourceManagerRef
.addResourceSelectionChangedUIListener(resourceSelectionChangedListener);
- resourceManager
+ resourceManagerRef
.addObserverListChangedUIListener(resourceObserverListChangedListener);
}
viewer.refresh();
// Call Native Method
- resourceManager.notifyObserverRequest(
- resourceManager.getCurrentResourceInSelection(), observer
- .getValue().getObserverInfo().getId());
+ resourceManagerRef.notifyObserverRequest(
+ resourceManagerRef.getCurrentResourceInSelection(),
+ observer.getValue().getObserverInfo().getId());
}
}
private void changeButtonStatus() {
- SimulatorResource resource = resourceManager
+ SimulatorResource resource = resourceManagerRef
.getCurrentResourceInSelection();
if (null == resource) {
return;
public void dispose() {
// Unregister the listener
if (null != resourceSelectionChangedListener) {
- resourceManager
+ resourceManagerRef
.removeResourceSelectionChangedUIListener(resourceSelectionChangedListener);
}
if (null != resourceObserverListChangedListener) {
- resourceManager
+ resourceManagerRef
.removeObserverListChangedUIListener(resourceObserverListChangedListener);
}
super.dispose();