diff --git a/bindings/java/src/org/sleuthkit/datamodel/CommunicationsFilter.java b/bindings/java/src/org/sleuthkit/datamodel/CommunicationsFilter.java index c4ed6d764f13c03a768f35800073d70955d1f0e8..fc8c09e06bfccea6f3be15090ef79f93191f86a0 100644 --- a/bindings/java/src/org/sleuthkit/datamodel/CommunicationsFilter.java +++ b/bindings/java/src/org/sleuthkit/datamodel/CommunicationsFilter.java @@ -359,7 +359,7 @@ public String getDescription() { @Override String getSQL(CommunicationsManager commsManager) { if(limit > 0) { - return "ORDER BY relationships.date_time LIMIT " + limit; + return "ORDER BY relationships.date_time DESC LIMIT " + limit; } else { return ""; } diff --git a/bindings/java/src/org/sleuthkit/datamodel/blackboardutils/CommunicationArtifactsHelper.java b/bindings/java/src/org/sleuthkit/datamodel/blackboardutils/CommunicationArtifactsHelper.java index e63275e0a348f3498c052f4cbeab0f204c387db1..f6db50b6dd347037e3374dba6683da3d20358843 100644 --- a/bindings/java/src/org/sleuthkit/datamodel/blackboardutils/CommunicationArtifactsHelper.java +++ b/bindings/java/src/org/sleuthkit/datamodel/blackboardutils/CommunicationArtifactsHelper.java @@ -18,7 +18,6 @@ */ package org.sleuthkit.datamodel.blackboardutils; -import com.google.gson.Gson; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -40,6 +39,7 @@ import org.sleuthkit.datamodel.SleuthkitCase; import org.sleuthkit.datamodel.TskCoreException; import org.sleuthkit.datamodel.TskDataException; +import org.sleuthkit.datamodel.blackboardutils.attributes.BlackboardJsonAttrUtil; import org.sleuthkit.datamodel.blackboardutils.attributes.MessageAttachments; import org.sleuthkit.datamodel.blackboardutils.attributes.MessageAttachments.FileAttachment; @@ -122,6 +122,9 @@ public String getDisplayName() { return typeStr; } } + + private static final BlackboardAttribute.Type ATTACHMENTS_ATTR_TYPE = new BlackboardAttribute.Type(BlackboardAttribute.ATTRIBUTE_TYPE.TSK_ATTACHMENTS); + // 'self' account for the application being processed by the module. private final Account.Type selfAccountType; @@ -822,6 +825,7 @@ public BlackboardArtifact addCalllog(CommunicationDirection direction, // return the artifact return callLogArtifact; } + /** * Adds attachments to a message. @@ -832,13 +836,9 @@ public BlackboardArtifact addCalllog(CommunicationDirection direction, * @throws TskCoreException If there is an error in adding attachments */ public void addAttachments(BlackboardArtifact message, MessageAttachments attachments) throws TskCoreException { - - // Convert the MessageAttachments object to JSON string - Gson gson = new Gson(); - String attachmentsJson = gson.toJson(attachments); - // Create attribute - message.addAttribute(new BlackboardAttribute(BlackboardAttribute.ATTRIBUTE_TYPE.TSK_ATTACHMENTS, getModuleName(), attachmentsJson)); + BlackboardAttribute blackboardAttribute = BlackboardJsonAttrUtil.toAttribute(ATTACHMENTS_ATTR_TYPE, getModuleName(), attachments); + message.addAttribute(blackboardAttribute); // Associate each attachment file with the message. Collection<FileAttachment> fileAttachments = attachments.getFileAttachments();