mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-15 09:17:42 +00:00
1917 Mime Tree fixed when updating from empty to contents
This commit is contained in:
parent
cfeae34850
commit
f45b0b642b
@ -149,6 +149,8 @@ public interface DisplayableItemNodeVisitor<T> {
|
||||
|
||||
T visit(FileTypesByMimeType.MediaSubTypeNode aThis);
|
||||
|
||||
T visit(FileTypesByMimeType.EmptyNode aThis);
|
||||
|
||||
|
||||
/**
|
||||
* Visitor with an implementable default behavior for all types. Override
|
||||
@ -218,6 +220,11 @@ public interface DisplayableItemNodeVisitor<T> {
|
||||
public T visit(FileTypesByMimeType.MediaSubTypeNode ftByMimeTypeMediaTypeNode) {
|
||||
return defaultVisit(ftByMimeTypeMediaTypeNode);
|
||||
}
|
||||
@Override
|
||||
public T visit(FileTypesByMimeType.EmptyNode ftByMimeTypeEmptyNode) {
|
||||
return defaultVisit(ftByMimeTypeEmptyNode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public T visit(DeletedContentNode dcn) {
|
||||
return defaultVisit(dcn);
|
||||
|
@ -58,7 +58,6 @@ import org.sleuthkit.datamodel.TskData;
|
||||
class FileTypesByMimeType extends Observable implements AutopsyVisitableItem {
|
||||
|
||||
static SleuthkitCase skCase;
|
||||
static final String EMPTY_MIME_TREE_STRING = "Data not available. Run file type identification module.";
|
||||
/**
|
||||
* The nodes of this tree will be determined dynamically by the mimetypes
|
||||
* which exist in the database. This hashmap will store them with the media
|
||||
@ -144,7 +143,7 @@ class FileTypesByMimeType extends Observable implements AutopsyVisitableItem {
|
||||
IngestManager.getInstance().addIngestJobEventListener(pcl);
|
||||
IngestManager.getInstance().addIngestModuleEventListener(pcl);
|
||||
// Case.addPropertyChangeListener(pcl);
|
||||
|
||||
// populateHashMap();
|
||||
FileTypesByMimeType.skCase = skCase;
|
||||
}
|
||||
|
||||
@ -194,6 +193,7 @@ class FileTypesByMimeType extends Observable implements AutopsyVisitableItem {
|
||||
class FileTypesByMimeTypeNodeChildren extends ChildFactory<String> implements Observer {
|
||||
|
||||
private SleuthkitCase skCase;
|
||||
static final String EMPTY_MIME_TREE_STRING = "Data not available. Run file type identification module.";
|
||||
|
||||
/**
|
||||
*
|
||||
@ -207,17 +207,21 @@ class FileTypesByMimeType extends Observable implements AutopsyVisitableItem {
|
||||
|
||||
@Override
|
||||
protected boolean createKeys(List<String> mediaTypeNodes) {
|
||||
// if (!existingMimeTypes.isEmpty()) {
|
||||
if (!existingMimeTypes.isEmpty()) {
|
||||
mediaTypeNodes.addAll(getMediaTypeList());
|
||||
// } else {
|
||||
// mediaTypeNodes.add(EMPTY_MIME_TREE_STRING);
|
||||
// }
|
||||
} else {
|
||||
mediaTypeNodes.add(EMPTY_MIME_TREE_STRING);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Node createNodeForKey(String key) {
|
||||
if (!existingMimeTypes.isEmpty()) {
|
||||
return new MediaTypeNode(key);
|
||||
} else {
|
||||
return new EmptyNode(EMPTY_MIME_TREE_STRING);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -228,6 +232,31 @@ class FileTypesByMimeType extends Observable implements AutopsyVisitableItem {
|
||||
|
||||
}
|
||||
|
||||
class EmptyNode extends DisplayableItemNode {
|
||||
|
||||
EmptyNode(String name) {
|
||||
super(Children.LEAF);
|
||||
super.setName(name);
|
||||
setName(name);
|
||||
setDisplayName(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isLeafTypeNode() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> T accept(DisplayableItemNodeVisitor<T> v) {
|
||||
return v.visit(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getItemType() {
|
||||
return getClass().getName();
|
||||
}
|
||||
}
|
||||
|
||||
class MediaTypeNode extends DisplayableItemNode {
|
||||
|
||||
String mediaType;
|
||||
@ -267,14 +296,8 @@ class FileTypesByMimeType extends Observable implements AutopsyVisitableItem {
|
||||
|
||||
@Override
|
||||
protected boolean createKeys(List<String> mediaTypeNodes) {
|
||||
// if (!existingMimeTypes.isEmpty() && !mediaType.equals(EMPTY_MIME_TREE_STRING)) {
|
||||
// System.out.println(mediaType);
|
||||
// System.out.println(existingMimeTypes.size());
|
||||
mediaTypeNodes.addAll(existingMimeTypes.get(mediaType));
|
||||
return true;
|
||||
// } else {
|
||||
// return false;
|
||||
// }
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Loading…
x
Reference in New Issue
Block a user