19 package org.sleuthkit.autopsy.communications.snapshot;
 
   21 import java.util.List;
 
   22 import java.awt.image.BufferedImage;
 
   23 import java.io.IOException;
 
   24 import java.nio.file.Path;
 
   25 import java.text.SimpleDateFormat;
 
   26 import java.time.Instant;
 
   27 import java.util.ArrayList;
 
   28 import java.util.Collection;
 
   29 import java.util.Date;
 
   30 import java.util.HashMap;
 
   32 import javax.imageio.ImageIO;
 
   50     private final BufferedImage 
image;
 
   66         super(currentCase, reportFolderPath, reportName, generationDate);
 
   68         this.image = snapshot;
 
   81         SimpleDateFormat formatter = 
new SimpleDateFormat(
"MMMMM dd, yyyy"); 
 
   86         HashMap<String, Object> snapShotContext = 
new HashMap<>();
 
   93                 long startDate = ((DateRangeFilter) filter).getStartDate();
 
   94                 long endDate = ((DateRangeFilter) filter).getEndDate();
 
   98                     snapShotContext.put(
"startTime", formatter.format(
new Date((Instant.ofEpochSecond(startDate)).toEpochMilli()))); 
 
  102                     snapShotContext.put(
"endTime", formatter.format(
new Date((Instant.ofEpochSecond(endDate)).toEpochMilli()))); 
 
  106                 Set<
Account.
Type> selectedAccounts = ((AccountTypeFilter) filter).getAccountTypes();
 
  107                 ArrayList<ReportWriterHelper> fullAccountList = 
new ArrayList<>();
 
  113                     fullAccountList.add(
new ReportWriterHelper(type.getDisplayName(), selectedAccounts.contains(type)));
 
  116                 snapShotContext.put(
"accounts", fullAccountList);
 
  118                 Collection<String> ids = ((DeviceFilter) filter).getDevices();
 
  119                 ArrayList<ReportWriterHelper> list = 
new ArrayList<>();
 
  123                         boolean selected = ids.contains(dataSource.getDeviceId());
 
  124                         String dsName = sleuthkitCase.
getContentById(dataSource.getId()).getName();
 
  131                 snapShotContext.put(
"devices", list);
 
Path getReportFolderPath()
 
final CommunicationsFilter filter
 
void writeSnapShotHTMLFile()
 
List< DataSource > getDataSources()
 
final BufferedImage image
 
Content getContentById(long id)
 
List< SubFilter > getAndFilters()
 
static final Account.Type CREDIT_CARD
 
static final List< Account.Type > PREDEFINED_ACCOUNT_TYPES
 
SleuthkitCase getSleuthkitCase()
 
void fillTemplateAndWrite(final String templateLocation, final String templateName, Object context, final Path outPutFile)
 
final Path reportFolderPath
 
CommSnapShotReportWriter(Case currentCase, Path reportFolderPath, String reportName, Date generationDate, BufferedImage snapshot, CommunicationsFilter filter)