Handle serialization for new fileextmismatch/FileExtMismatchDetectorModuleSettings field

This commit is contained in:
Richard Cordovano 2016-03-09 09:50:32 -05:00
parent 73c82f2047
commit b27e762b09
3 changed files with 31 additions and 16 deletions

View File

@ -18,6 +18,8 @@
*/ */
package org.sleuthkit.autopsy.modules.fileextmismatch; package org.sleuthkit.autopsy.modules.fileextmismatch;
import java.io.IOException;
import java.io.ObjectInputStream;
import org.sleuthkit.autopsy.ingest.IngestModuleIngestJobSettings; import org.sleuthkit.autopsy.ingest.IngestModuleIngestJobSettings;
/** /**
@ -26,11 +28,15 @@ import org.sleuthkit.autopsy.ingest.IngestModuleIngestJobSettings;
final class FileExtMismatchDetectorModuleSettings implements IngestModuleIngestJobSettings { final class FileExtMismatchDetectorModuleSettings implements IngestModuleIngestJobSettings {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
private boolean skipFilesWithNoExtension = true; private long versionNumber;
private boolean skipFilesWithTextPlainMimeType = true; private boolean skipFilesWithNoExtension;
private boolean skipKnownFiles = true; private boolean skipFilesWithTextPlainMimeType;
private boolean skipKnownFiles;
FileExtMismatchDetectorModuleSettings() { FileExtMismatchDetectorModuleSettings() {
this.skipFilesWithNoExtension = true;
this.skipFilesWithTextPlainMimeType = true;
this.skipKnownFiles = true;
} }
FileExtMismatchDetectorModuleSettings(boolean skipKnownFiles, boolean skipFilesWithNoExtension, boolean skipFilesWithTextPlainMimeType) { FileExtMismatchDetectorModuleSettings(boolean skipKnownFiles, boolean skipFilesWithNoExtension, boolean skipFilesWithTextPlainMimeType) {
@ -44,33 +50,42 @@ final class FileExtMismatchDetectorModuleSettings implements IngestModuleIngestJ
return serialVersionUID; return serialVersionUID;
} }
void setSkipFilesWithNoExtension(boolean enabled) { void setSkipFilesWithNoExtension(boolean skipFilesWithNoExtension) {
skipFilesWithNoExtension = enabled; this.skipFilesWithNoExtension = skipFilesWithNoExtension;
} }
boolean skipFilesWithNoExtension() { boolean skipFilesWithNoExtension() {
return skipFilesWithNoExtension; return skipFilesWithNoExtension;
} }
void setSkipFilesWithTextPlainMimeType(boolean enabled) { void setSkipFilesWithTextPlainMimeType(boolean skipFilesWithTextPlainMimeType) {
skipFilesWithTextPlainMimeType = enabled; this.skipFilesWithTextPlainMimeType = skipFilesWithTextPlainMimeType;
} }
boolean skipFilesWithTextPlainMimeType() { boolean skipFilesWithTextPlainMimeType() {
return skipFilesWithTextPlainMimeType; return skipFilesWithTextPlainMimeType;
} }
/** boolean skipKnownFiles() {
* @return the skipKnownFiles
*/
boolean isSkipKnownFiles() {
return skipKnownFiles; return skipKnownFiles;
} }
/**
* @param skipKnownFiles the skipKnownFiles to set
*/
void setSkipKnownFiles(boolean skipKnownFiles) { void setSkipKnownFiles(boolean skipKnownFiles) {
this.skipKnownFiles = skipKnownFiles; this.skipKnownFiles = skipKnownFiles;
} }
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {
in.defaultReadObject();
if (0L == versionNumber) {
/*
* If the version number is set to the default value of zero, then
* skipKnownFiles is a new field that has been initialized to the
* Java default boolean field value of false. Change this to the
* desired default value of true.
*/
skipKnownFiles = true;
}
versionNumber = 1;
}
} }

View File

@ -104,7 +104,7 @@ public class FileExtMismatchIngestModule implements FileIngestModule {
@Override @Override
public ProcessResult process(AbstractFile abstractFile) { public ProcessResult process(AbstractFile abstractFile) {
blackboard = Case.getCurrentCase().getServices().getBlackboard(); blackboard = Case.getCurrentCase().getServices().getBlackboard();
if(this.settings.isSkipKnownFiles() && (abstractFile.getKnown() == FileKnown.KNOWN)) { if(this.settings.skipKnownFiles() && (abstractFile.getKnown() == FileKnown.KNOWN)) {
return ProcessResult.OK; return ProcessResult.OK;
} }

View File

@ -38,7 +38,7 @@ final class FileExtMismatchModuleSettingsPanel extends IngestModuleIngestJobSett
private void customizeComponents() { private void customizeComponents() {
skipNoExtCheckBox.setSelected(settings.skipFilesWithNoExtension()); skipNoExtCheckBox.setSelected(settings.skipFilesWithNoExtension());
skipTextPlain.setSelected(settings.skipFilesWithTextPlainMimeType()); skipTextPlain.setSelected(settings.skipFilesWithTextPlainMimeType());
skipKnownFiles.setSelected(settings.isSkipKnownFiles()); skipKnownFiles.setSelected(settings.skipKnownFiles());
} }
@Override @Override