Autopsy 4.22.1
Graphical digital forensics platform for The Sleuth Kit and other tools.
ViewFileInTimelineAction.java
Go to the documentation of this file.
1/*
2 * Autopsy Forensic Browser
3 *
4 * Copyright 2011-2016 Basis Technology Corp.
5 * Contact: carrier <at> sleuthkit <dot> org
6 *
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
10 *
11 * http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 */
19package org.sleuthkit.autopsy.timeline.actions;
20
21import java.awt.event.ActionEvent;
22import java.util.logging.Level;
23import javax.swing.AbstractAction;
24import org.openide.util.NbBundle;
25import org.openide.util.actions.SystemAction;
26import org.sleuthkit.autopsy.coreutils.Logger;
27import org.sleuthkit.autopsy.coreutils.MessageNotifyUtil;
28import org.sleuthkit.autopsy.coreutils.ModuleSettings;
29import org.sleuthkit.autopsy.timeline.OpenTimelineAction;
30import org.sleuthkit.datamodel.AbstractFile;
31import org.sleuthkit.datamodel.TskCoreException;
32import org.sleuthkit.datamodel.TskData;
33
38public final class ViewFileInTimelineAction extends AbstractAction {
39
40 private static final long serialVersionUID = 1L;
41
42 private static final Logger logger = Logger.getLogger(ViewFileInTimelineAction.class.getName());
43
44 private final AbstractFile file;
45
51 public ViewFileInTimelineAction(AbstractFile file, String displayName) {
52 super(displayName);
53 this.file = file;
54
55 if (file.getType().equals(TskData.TSK_DB_FILES_TYPE_ENUM.SLACK)
56 || file.getType().equals(TskData.TSK_DB_FILES_TYPE_ENUM.UNALLOC_BLOCKS)
57 || (file.getCrtime() <= 0
58 && file.getCtime() <= 0
59 && file.getMtime() <= 0
60 && file.getAtime() <= 0)) {
61 this.setEnabled(false);
62 }
63 // If timeline functionality is not available this action is disabled.
64 if ("false".equals(ModuleSettings.getConfigSetting("timeline", "enable_timeline"))) {
65 setEnabled(false);
66 }
67 }
68
69 @NbBundle.Messages({"ViewFileInTimelineAction.viewFile.displayName=View File in Timeline... "})
71 return new ViewFileInTimelineAction(file, Bundle.ViewFileInTimelineAction_viewFile_displayName());
72 }
73
74 @NbBundle.Messages({"ViewFileInTimelineAction.viewSourceFile.displayName=View Source File in Timeline... "})
76 return new ViewFileInTimelineAction(file, Bundle.ViewFileInTimelineAction_viewSourceFile_displayName());
77 }
78
79 @Override
80 public void actionPerformed(ActionEvent e) {
81 try {
82 SystemAction.get(OpenTimelineAction.class).showFileInTimeline(file);
83 } catch (TskCoreException ex) {
84 MessageNotifyUtil.Message.error("Error opening Timeline");
85 logger.log(Level.SEVERE, "Error showing timeline.", ex);
86 }
87 }
88}
synchronized static Logger getLogger(String name)
Definition Logger.java:124
static synchronized String getConfigSetting(String moduleName, String settingName)
static ViewFileInTimelineAction createViewSourceFileAction(AbstractFile file)
static ViewFileInTimelineAction createViewFileAction(AbstractFile file)

Copyright © 2012-2024 Sleuth Kit Labs. Generated on:
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.