mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-15 09:17:42 +00:00
updates to make IngestMessagePanel table model thread-safe
This commit is contained in:
parent
e2d66535ab
commit
7e7f7b43bb
@ -713,26 +713,26 @@ class IngestMessagePanel extends JPanel implements TableModelListener {
|
|||||||
messages.add(message);
|
messages.add(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
List<IngestMessage> getMessages() {
|
synchronized List<IngestMessage> getMessages() {
|
||||||
return messages;
|
return messages;
|
||||||
}
|
}
|
||||||
|
|
||||||
void add(IngestMessage message) {
|
synchronized void add(IngestMessage message) {
|
||||||
messages.add(message);
|
messages.add(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
//add all messages from another group
|
//add all messages from another group
|
||||||
void addAll(IngestMessageGroup group) {
|
synchronized void addAll(IngestMessageGroup group) {
|
||||||
for (IngestMessage m : group.getMessages()) {
|
for (IngestMessage m : group.getMessages()) {
|
||||||
messages.add(m);
|
messages.add(m);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int getCount() {
|
synchronized int getCount() {
|
||||||
return messages.size();
|
return messages.size();
|
||||||
}
|
}
|
||||||
|
|
||||||
String getDetails() {
|
synchronized String getDetails() {
|
||||||
StringBuilder b = new StringBuilder("");
|
StringBuilder b = new StringBuilder("");
|
||||||
for (IngestMessage m : messages) {
|
for (IngestMessage m : messages) {
|
||||||
String details = m.getDetails();
|
String details = m.getDetails();
|
||||||
@ -751,7 +751,7 @@ class IngestMessagePanel extends JPanel implements TableModelListener {
|
|||||||
* return color corresp to priority
|
* return color corresp to priority
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Color getColor() {
|
synchronized Color getColor() {
|
||||||
int count = messages.size();
|
int count = messages.size();
|
||||||
if (count == 1) {
|
if (count == 1) {
|
||||||
return VERY_HIGH_PRI_COLOR;
|
return VERY_HIGH_PRI_COLOR;
|
||||||
@ -769,7 +769,7 @@ class IngestMessagePanel extends JPanel implements TableModelListener {
|
|||||||
* used for chrono sort
|
* used for chrono sort
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Date getDatePosted() {
|
synchronized Date getDatePosted() {
|
||||||
return messages.get(messages.size() - 1).getDatePosted();
|
return messages.get(messages.size() - 1).getDatePosted();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -777,35 +777,35 @@ class IngestMessagePanel extends JPanel implements TableModelListener {
|
|||||||
* get subject of the first message
|
* get subject of the first message
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
String getSubject() {
|
synchronized String getSubject() {
|
||||||
return messages.get(0).getSubject();
|
return messages.get(0).getSubject();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* return unique key, should be the same for all msgs
|
* return unique key, should be the same for all msgs
|
||||||
*/
|
*/
|
||||||
String getUniqueKey() {
|
synchronized String getUniqueKey() {
|
||||||
return messages.get(0).getUniqueKey();
|
return messages.get(0).getUniqueKey();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* return source module, should be the same for all msgs
|
* return source module, should be the same for all msgs
|
||||||
*/
|
*/
|
||||||
String getSource() {
|
synchronized String getSource() {
|
||||||
return messages.get(0).getSource();
|
return messages.get(0).getSource();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* return data of the first message
|
* return data of the first message
|
||||||
*/
|
*/
|
||||||
BlackboardArtifact getData() {
|
synchronized BlackboardArtifact getData() {
|
||||||
return messages.get(0).getData();
|
return messages.get(0).getData();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* return message type, should be the same for all msgs
|
* return message type, should be the same for all msgs
|
||||||
*/
|
*/
|
||||||
IngestMessage.MessageType getMessageType() {
|
synchronized IngestMessage.MessageType getMessageType() {
|
||||||
return messages.get(0).getMessageType();
|
return messages.get(0).getMessageType();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -870,16 +870,17 @@ class IngestMessagePanel extends JPanel implements TableModelListener {
|
|||||||
cell.setFont(new Font("", Font.PLAIN, 16));
|
cell.setFont(new Font("", Font.PLAIN, 16));
|
||||||
|
|
||||||
final IngestMessageGroup messageGroup = tableModel.getMessageGroup(row);
|
final IngestMessageGroup messageGroup = tableModel.getMessageGroup(row);
|
||||||
MessageType mt = messageGroup.getMessageType();
|
if (messageGroup != null) {
|
||||||
if (mt == MessageType.ERROR) {
|
MessageType mt = messageGroup.getMessageType();
|
||||||
cell.setBackground(ERROR_COLOR);
|
if (mt == MessageType.ERROR) {
|
||||||
} else if (mt == MessageType.WARNING) {
|
cell.setBackground(ERROR_COLOR);
|
||||||
cell.setBackground(Color.orange);
|
} else if (mt == MessageType.WARNING) {
|
||||||
} else {
|
cell.setBackground(Color.orange);
|
||||||
//cell.setBackground(table.getBackground());
|
} else {
|
||||||
cell.setBackground(messageGroup.getColor());
|
//cell.setBackground(table.getBackground());
|
||||||
|
cell.setBackground(messageGroup.getColor());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return cell;
|
return cell;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -910,16 +911,17 @@ class IngestMessagePanel extends JPanel implements TableModelListener {
|
|||||||
}
|
}
|
||||||
|
|
||||||
final IngestMessageGroup messageGroup = tableModel.getMessageGroup(row);
|
final IngestMessageGroup messageGroup = tableModel.getMessageGroup(row);
|
||||||
MessageType mt = messageGroup.getMessageType();
|
if (messageGroup != null) {
|
||||||
if (mt == MessageType.ERROR) {
|
MessageType mt = messageGroup.getMessageType();
|
||||||
cell.setBackground(ERROR_COLOR);
|
if (mt == MessageType.ERROR) {
|
||||||
} else if (mt == MessageType.WARNING) {
|
cell.setBackground(ERROR_COLOR);
|
||||||
cell.setBackground(Color.orange);
|
} else if (mt == MessageType.WARNING) {
|
||||||
} else {
|
cell.setBackground(Color.orange);
|
||||||
//cell.setBackground(table.getBackground());
|
} else {
|
||||||
cell.setBackground(messageGroup.getColor());
|
//cell.setBackground(table.getBackground());
|
||||||
|
cell.setBackground(messageGroup.getColor());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return cell;
|
return cell;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -945,14 +947,16 @@ class IngestMessagePanel extends JPanel implements TableModelListener {
|
|||||||
Component cell = super.getTableCellRendererComponent(table, aValue, isSelected, hasFocus, row, column);
|
Component cell = super.getTableCellRendererComponent(table, aValue, isSelected, hasFocus, row, column);
|
||||||
|
|
||||||
final IngestMessageGroup messageGroup = tableModel.getMessageGroup(row);
|
final IngestMessageGroup messageGroup = tableModel.getMessageGroup(row);
|
||||||
MessageType mt = messageGroup.getMessageType();
|
if (messageGroup != null) {
|
||||||
if (mt == MessageType.ERROR) {
|
MessageType mt = messageGroup.getMessageType();
|
||||||
cell.setBackground(ERROR_COLOR);
|
if (mt == MessageType.ERROR) {
|
||||||
} else if (mt == MessageType.WARNING) {
|
cell.setBackground(ERROR_COLOR);
|
||||||
cell.setBackground(Color.orange);
|
} else if (mt == MessageType.WARNING) {
|
||||||
} else {
|
cell.setBackground(Color.orange);
|
||||||
//cell.setBackground(table.getBackground());
|
} else {
|
||||||
cell.setBackground(messageGroup.getColor());
|
//cell.setBackground(table.getBackground());
|
||||||
|
cell.setBackground(messageGroup.getColor());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return cell;
|
return cell;
|
||||||
@ -986,9 +990,11 @@ class IngestMessagePanel extends JPanel implements TableModelListener {
|
|||||||
messageTable.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
|
messageTable.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
|
||||||
//check if has details
|
//check if has details
|
||||||
IngestMessageGroup m = getMessageGroup(selected);
|
IngestMessageGroup m = getMessageGroup(selected);
|
||||||
String details = m.getDetails();
|
if (m != null) {
|
||||||
if (details != null && !details.equals("")) {
|
String details = m.getDetails();
|
||||||
mainPanel.showDetails(selected);
|
if (details != null && !details.equals("")) {
|
||||||
|
mainPanel.showDetails(selected);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
messageTable.setCursor(null);
|
messageTable.setCursor(null);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user