Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkaguilar2013-12-10 23:00:44 +0000
committerDavid Phillips2013-12-16 17:27:48 +0000
commit888d7b90a5feff72b188294520175d34780b5a1b (patch)
treeff7d42f6860509d87e03729ae33142036fc8d2d4
parente36575bcd25d4fcd57925c1a190b3857e6641b22 (diff)
downloadorg.eclipse.ote-OSEE_0.16_release.tar.gz
org.eclipse.ote-OSEE_0.16_release.tar.xz
org.eclipse.ote-OSEE_0.16_release.zip
feature[ats_K4H1K]: add ability to save amd restore data typeOSEE_0.16_release
-rw-r--r--org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/tree/WatchList.java22
-rw-r--r--org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/AddWatchParameter.java9
-rw-r--r--org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/LoadWatchListJob.java7
-rw-r--r--org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageInfoSelectionHandler.java2
-rw-r--r--org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageParameter.java10
-rw-r--r--org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchListConfiguration.java6
-rw-r--r--org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchView.java10
7 files changed, 56 insertions, 10 deletions
diff --git a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/tree/WatchList.java b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/tree/WatchList.java
index c88ee7954..4392b960b 100644
--- a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/tree/WatchList.java
+++ b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/tree/WatchList.java
@@ -100,15 +100,19 @@ public class WatchList implements ITreeContentProvider {
}
}
- public WatchedMessageNode createElements(String message, Collection<ElementPath> elements, MessageMode mode) throws ClassNotFoundException, InstantiationException, IllegalAccessException, Exception {
- return createElements(message, elements, mode, null);
+ public WatchedMessageNode createElements(String message, MessageMode mode, Collection<ElementPath> elements) throws ClassNotFoundException, InstantiationException, IllegalAccessException, Exception {
+ return createElements(message, null, mode, elements, null);
}
- public WatchedMessageNode createElements(String message, Collection<ElementPath> elements, MessageMode mode, Map<ElementPath, String> valueMap) throws ClassNotFoundException, InstantiationException, IllegalAccessException, Exception {
+ public WatchedMessageNode createElements(String message, String dataType, MessageMode mode, Collection<ElementPath> elements, Map<ElementPath, String> valueMap) throws ClassNotFoundException, InstantiationException, IllegalAccessException, Exception {
boolean needToRegisterListener = false;
WatchedMessageNode messageNode = (WatchedMessageNode) rootNode.getMessageByName(message);
if (messageNode == null) {
- messageNode = createMessageNode(message, mode);
+ if (dataType == null) {
+ messageNode = createMessageNode(message, mode);
+ } else {
+ messageNode = createMessageNode(message, mode, dataType);
+ }
messageNode.setRequestedValueMap(valueMap);
needToRegisterListener = true;
}
@@ -217,7 +221,15 @@ public class WatchList implements ITreeContentProvider {
}
private WatchedMessageNode createMessageNode(String message, MessageMode mode) throws Exception {
- IMessageSubscription subscription = service.subscribe(message, mode);
+ IMessageSubscription subscription = service.subscribe(message, mode);
+ WatchedMessageNode node = new WatchedMessageNode(subscription);
+ rootNode.addChild(node);
+ return node;
+ }
+
+
+ private WatchedMessageNode createMessageNode(String message, MessageMode mode, String dataType) throws Exception {
+ IMessageSubscription subscription = service.subscribe(message, dataType, mode);
WatchedMessageNode node = new WatchedMessageNode(subscription);
rootNode.addChild(node);
return node;
diff --git a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/AddWatchParameter.java b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/AddWatchParameter.java
index 33db6e0d8..996fe0d13 100644
--- a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/AddWatchParameter.java
+++ b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/AddWatchParameter.java
@@ -98,6 +98,15 @@ public class AddWatchParameter {
parameter.setIsWriter(isWriter);
}
+ public void setDataType(String messageName, String type) {
+ MessageParameter parameter = watchMap.get(messageName);
+ if (parameter == null) {
+ parameter = new MessageParameter(messageName);
+ watchMap.put(messageName, parameter);
+ }
+ parameter.setDataType(type);
+ }
+
public void setValue(ElementPath path, String value) {
String messageName = path.getMessageName();
MessageParameter parameter = watchMap.get(messageName);
diff --git a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/LoadWatchListJob.java b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/LoadWatchListJob.java
index 9488c7372..7a23d42e0 100644
--- a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/LoadWatchListJob.java
+++ b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/LoadWatchListJob.java
@@ -140,6 +140,13 @@ final class LoadWatchListJob extends Job {
} catch (NumberFormatException e) {
e.printStackTrace();
}
+ } else if (line.startsWith("data type=")) {
+ try {
+ String type = line.substring(10);
+ watchListConfiguration.setDataType(message, type);
+ } catch (NumberFormatException e) {
+ e.printStackTrace();
+ }
} else {
break;
}
diff --git a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageInfoSelectionHandler.java b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageInfoSelectionHandler.java
index 3b60a57dc..9977590ba 100644
--- a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageInfoSelectionHandler.java
+++ b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageInfoSelectionHandler.java
@@ -27,7 +27,7 @@ public class MessageInfoSelectionHandler implements MessageInfoSelectionListener
try {
WatchedMessageNode node = view.getWatchList().getMessageNode(className);
if (node == null) {
- node = (WatchedMessageNode) view.getWatchList().createElements(className, new ArrayList<ElementPath>(), MessageMode.READER);
+ node = (WatchedMessageNode) view.getWatchList().createElements(className, MessageMode.READER, new ArrayList<ElementPath>());
}
new WatchElementAction(view, node).run();
} catch (Throwable th) {
diff --git a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageParameter.java b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageParameter.java
index 41db3e1d4..22bee6570 100644
--- a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageParameter.java
+++ b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/MessageParameter.java
@@ -10,10 +10,12 @@ final class MessageParameter {
private final HashMap<ElementPath, String> valueMap = new HashMap<ElementPath, String>();
private final String messageName;
private boolean isWriter;
+ private String dataType;
MessageParameter(String messageName) {
this.messageName = messageName;
this.isWriter = false;
+ dataType = null;
}
public void addAll(Collection<ElementPath> paths) {
@@ -49,6 +51,14 @@ final class MessageParameter {
public HashMap<ElementPath, String> getValueMap() {
return valueMap;
}
+
+ public String getDataType() {
+ return dataType;
+ }
+
+ public void setDataType(String dataType) {
+ this.dataType = dataType;
+ }
}
diff --git a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchListConfiguration.java b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchListConfiguration.java
index 861af34c6..f21c9fbe0 100644
--- a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchListConfiguration.java
+++ b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchListConfiguration.java
@@ -11,7 +11,7 @@ final class WatchListConfiguration {
private final List<ElementPath> recHeaderElementsToAdd;
private final Set<String> recHeaderHex;
private final Set<String> recBodyHex;
-
+
public WatchListConfiguration() {
recBodyElementsToAdd = new ArrayList<ElementPath>();
recHeaderElementsToAdd = new ArrayList<ElementPath>();
@@ -32,6 +32,10 @@ final class WatchListConfiguration {
addWatchParameter.setIsWriter(message, isWriter);
}
+ public void setDataType(String message, String type) {
+ addWatchParameter.setDataType(message, type);
+ }
+
public List<ElementPath> getRecBodyElementsToAdd() {
return recBodyElementsToAdd;
}
diff --git a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchView.java b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchView.java
index bd64686fb..56b6b50b3 100644
--- a/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchView.java
+++ b/org.eclipse.ote.ui.message/src/org/eclipse/ote/ui/message/watch/WatchView.java
@@ -637,7 +637,7 @@ public final class WatchView extends ViewPart implements ITestConnectionListener
elements = new ArrayList<ElementPath>();
}
MessageMode mode = message.isWriter() ? MessageMode.WRITER : MessageMode.READER;
- watchList.createElements(message.getMessageName(), elements, mode, message.getValueMap());
+ watchList.createElements(message.getMessageName(),message.getDataType(), mode, elements, message.getValueMap());
} catch (ClassNotFoundException ex1) {
if (openProceedWithProcessing("Could not find a class definition for " + message + "\n Do you wish to continue")) {
continue;
@@ -737,11 +737,15 @@ public final class WatchView extends ViewPart implements ITestConnectionListener
fw.write(msg.getMessageClassName());
fw.write('\n');
fw.write("isWriter=");
- descendants.clear();
-
boolean isWriter = msg.getSubscription().getMessageMode() == MessageMode.WRITER;
fw.write(Boolean.toString(isWriter));
fw.write('\n');
+
+ fw.write("data type=");
+ fw.write(msg.getSubscription().getMemType().name());
+ fw.write('\n');
+
+ descendants.clear();
msg.collectDescendants(descendants);
Map<ElementPath, String> map = msg.getRequestedValueMap();

Back to the top