From f66a9a71d48c7c77a281e439fe04550e83cb0a69 Mon Sep 17 00:00:00 2001 From: Karl Mortensen Date: Tue, 24 Nov 2015 10:15:10 -0500 Subject: [PATCH 1/5] make documentation clearer --- .../images/updatedServiceInstall.PNG | Bin 28864 -> 28357 bytes docs/doxygen-user/installSolr.dox | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/doxygen-user/images/updatedServiceInstall.PNG b/docs/doxygen-user/images/updatedServiceInstall.PNG index 7be7fb50747f0bab9a98b7b026c7b4576506af91..f3f1622e27ccc45d2e677f8fca1f1e7d27624750 100755 GIT binary patch literal 28357 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�X7zC*R<2`lOj9zSnZG=BX7L`j* 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%0A29{wohXU_z+bsjH015l<31HGe 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�#A;rXhCN%A`p4^nF2`;Ct*RcQ0$fk!sD7i$TVeXkzqC<;9w`D&G#l z#tZZ23*c}n_xfFkSQ1_vMcLh6n{U`O)b7{bXhg_(YjQuVZ^^I~wS42?b(7?gxmM|7 z8EDS^(N%YUF{Hl(;P@`c>zF#+*EUuAG)s23(zI|-SU;H?Wa4^!J3JvGU_2+G^P)=G ziBiWDmj$wIgA%PPlu$fhq+;Aio-&!?T#tCDS;1kLG}EV6F@@`seg$vb7eBZ#$|>}w zvfB0d^zCD-kuj>OWMFdpu%^4w0v{}qyhQG3)N8B`^Fahr-v)w|gZXhdo>R2?Caeo9 z-mvq;x84>iarT_6c|<0-)4&~ctD+YI>8RY*x;^quh`##e?T`Tw^Nj5{VrH^Zg^5w* zh7G8+1*hTn6$*Fd86e1CKD9PF>y^gw9IMvQ)>S13Wj4!12&w;5$Puj?|0U$w+D@3h zh1S}E_+^zJ2e0wg@(d=YePn9zVUm-i)&REJ-ad?N-9@MqjwzqCCJ-AL zaB?L6CYL+Or1NM0i-FW6?D2b2S1&?_EJcDH6QyG>QIbexwrzm7AdLKCOUyW5mP>wCRG6sgaK2inodd(^^VL42-z-t=v)%>=5E&-9=??2A_p%JfPhatt2DMVeaO zN02~wDt*4jX}$7=n)f1V6FLx^rE$f>y6?;`Z@i}yyAvw+@mTq?aq!A8L)yLwSX|{t zhp_8JuP7+m`^=OfTOiW14Ism5hXI4_LD@LzRu4hTVMKDi#kp0n&!ziMc{j8^H=tWj z$*y=9#jlQ^MmSIZac5qX{hQ-MaLu6-?(y9oCJ$*}aVE&o%C;MD4F)VRfGNuDpGcebteVtJAL|x2+HKT~TuNS(8i@k1fb8hQqn1VR+KN zXaU@WL^BOZO|*Ba_*=)D!YqcxNkZWUcqm3mlh3HWzO0u|sw^N_ajHmV`RniL_|)bfI2r9H*4|cBPpNA`~TcT?^^A~65A zw!!)jU5cmRZ)ncG$l+4uVdHd=45&=yvnlW_a8jpkJ zER$HQ6}U5p@mb^g*_eeH8s^&}*C&+k&(8w6BI0q6ag6kwU{HT+k^lWTjvrlEbFZPn zKWPR)4CinMjT=DE6j&N1Z*ocU&%5)4W)UDX6($1emEU80Nd7OWTMk_A?;q|%UqNO+ zE>R`}_`jCfF2-_t7R(|HS`F^_(MA&^tTVm1khM=6&1LuKY0r0feZ+QtYkH3}zyH-W zPV$fJedvZs@iMP z!OBU_8Ls`GykG@!qOjXnr>)><;j!j)3xm4`4O(+0OP-`wOg7&C85BT25M_cz@ zb+Srci=apGSEK;D?JNu;S?$*q1a!e<0z8@jJR zP#(GLGM6RfEJYaKnVE=-+;R3_8F@ZxSp8Ay`*|G)KLK~i%E{2mu2jyC(w}K{zrWg* f-z9xV-Pt){dHjG`@~GhNCGR_$1{#I8te*cDeAFl@ literal 28864 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 I>&dJC19kwFxc~qF diff --git a/docs/doxygen-user/installSolr.dox b/docs/doxygen-user/installSolr.dox index f9e1f97635..d6c350dbe3 100755 --- a/docs/doxygen-user/installSolr.dox +++ b/docs/doxygen-user/installSolr.dox @@ -55,7 +55,7 @@ The following steps will configure Solr to run using an account that will have a

\image html javaproperties.PNG

- A fully updated _serviceinstall.bat_ is shown below, with the changes marked in yellow. + A portion of an updated _serviceinstall.bat_ is shown below, with the changes marked in yellow.

\image html updatedServiceInstall.PNG

From c534d1dc513ce14100804ad48e278c0fbeb67139 Mon Sep 17 00:00:00 2001 From: jmillman Date: Mon, 23 Nov 2015 17:01:52 -0500 Subject: [PATCH 2/5] don't resort the tree so often --- .../tree/EventDescriptionTreeItem.java | 13 ++++++++++--- .../ui/detailview/tree/EventTypeTreeItem.java | 16 ++++++++++------ .../timeline/ui/detailview/tree/EventsTree.java | 6 ++---- .../timeline/ui/detailview/tree/NavTreeItem.java | 3 +-- .../timeline/ui/detailview/tree/RootItem.java | 13 ++++++++----- 5 files changed, 31 insertions(+), 20 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventDescriptionTreeItem.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventDescriptionTreeItem.java index 2f4b54ffd5..d85f9b564f 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventDescriptionTreeItem.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventDescriptionTreeItem.java @@ -37,13 +37,15 @@ class EventDescriptionTreeItem extends NavTreeItem { */ private final Map childMap = new HashMap<>(); private final EventBundle bundle; + private Comparator>> comparator = TreeComparator.Description; public EventBundle getEventBundle() { return bundle; } - EventDescriptionTreeItem(EventBundle g) { + EventDescriptionTreeItem(EventBundle g, Comparator>> comp) { bundle = g; + comparator = comp; setValue(g); } @@ -56,10 +58,11 @@ class EventDescriptionTreeItem extends NavTreeItem { public void insert(Deque> path) { EventBundle head = path.removeFirst(); EventDescriptionTreeItem treeItem = childMap.computeIfAbsent(head.getDescription(), description -> { - EventDescriptionTreeItem newTreeItem = new EventDescriptionTreeItem(head); + EventDescriptionTreeItem newTreeItem = new EventDescriptionTreeItem(head, comparator); newTreeItem.setExpanded(true); childMap.put(description, newTreeItem); getChildren().add(newTreeItem); + resort(comparator, false); return newTreeItem; }); @@ -81,8 +84,12 @@ class EventDescriptionTreeItem extends NavTreeItem { } @Override - public void resort(Comparator>> comp) { + void resort(Comparator>> comp, Boolean recursive) { + this.comparator = comp; FXCollections.sort(getChildren(), comp); + if (recursive) { + childMap.values().forEach(ti -> ti.resort(comp, true)); + } } @Override diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventTypeTreeItem.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventTypeTreeItem.java index afad634153..cfd283d8c5 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventTypeTreeItem.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventTypeTreeItem.java @@ -34,10 +34,11 @@ class EventTypeTreeItem extends NavTreeItem { */ private final Map childMap = new HashMap<>(); - private final Comparator>> comparator = TreeComparator.Description; + private Comparator>> comparator = TreeComparator.Description; - EventTypeTreeItem(EventBundle g) { + EventTypeTreeItem(EventBundle g, Comparator>> comp) { setValue(g); + comparator = comp; } @Override @@ -49,11 +50,11 @@ class EventTypeTreeItem extends NavTreeItem { public void insert(Deque> path) { EventBundle head = path.removeFirst(); EventDescriptionTreeItem treeItem = childMap.computeIfAbsent(head.getDescription(), description -> { - EventDescriptionTreeItem newTreeItem = new EventDescriptionTreeItem(head); + EventDescriptionTreeItem newTreeItem = new EventDescriptionTreeItem(head, comparator); newTreeItem.setExpanded(true); childMap.put(head.getDescription(), newTreeItem); getChildren().add(newTreeItem); - + resort(comparator, false); return newTreeItem; }); @@ -92,8 +93,11 @@ class EventTypeTreeItem extends NavTreeItem { } @Override - public void resort(Comparator>> comp - ) { + void resort(Comparator>> comp, Boolean recursive) { + this.comparator = comp; FXCollections.sort(getChildren(), comp); + if (recursive) { + childMap.values().forEach(ti -> ti.resort(comp, true)); + } } } diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventsTree.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventsTree.java index aed1e0374f..1eba76c5fc 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventsTree.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/EventsTree.java @@ -94,7 +94,6 @@ final public class EventsTree extends BorderPane { getRoot().remove(bundle); } } - getRoot().resort(sortByBox.getSelectionModel().getSelectedItem()); }); setRoot(); @@ -114,11 +113,10 @@ final public class EventsTree extends BorderPane { @ThreadConfined(type = ThreadConfined.ThreadType.JFX) private void setRoot() { - RootItem root = new RootItem(); + RootItem root = new RootItem(TreeComparator.Type.reversed().thenComparing(sortByBox.getSelectionModel().getSelectedItem())); for (EventBundle bundle : detailViewPane.getEventStripes()) { root.insert(bundle); } - root.resort(TreeComparator.Type.reversed().thenComparing(sortByBox.getSelectionModel().getSelectedItem())); eventsTree.setRoot(root); } @@ -131,7 +129,7 @@ final public class EventsTree extends BorderPane { sortByBox.getItems().setAll(Arrays.asList(TreeComparator.Description, TreeComparator.Count)); sortByBox.getSelectionModel().select(TreeComparator.Description); sortByBox.getSelectionModel().selectedItemProperty().addListener((Observable o) -> { - getRoot().resort(TreeComparator.Type.reversed().thenComparing(sortByBox.getSelectionModel().getSelectedItem())); + getRoot().resort(TreeComparator.Type.reversed().thenComparing(sortByBox.getSelectionModel().getSelectedItem()), true); }); eventsTree.setShowRoot(false); diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/NavTreeItem.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/NavTreeItem.java index 30d1fdd9ea..d2d69248b4 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/NavTreeItem.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/NavTreeItem.java @@ -32,9 +32,8 @@ abstract class NavTreeItem extends TreeItem> { abstract long getCount(); - abstract void resort(Comparator>> comp); + abstract void resort(Comparator>> comp, Boolean recursive); abstract NavTreeItem findTreeItemForEvent(EventBundle t); - } diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/RootItem.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/RootItem.java index f71d2e831d..ccfa97e2dd 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/RootItem.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/tree/RootItem.java @@ -42,9 +42,10 @@ class RootItem extends NavTreeItem { /** * the comparator if any used to sort the children of this item */ -// private TreeNodeComparators comp; - RootItem() { + private Comparator>> comparator = TreeComparator.Type.reversed(); + RootItem(Comparator>> comp) { + comp = comp; } @Override @@ -62,12 +63,13 @@ class RootItem extends NavTreeItem { EventTypeTreeItem treeItem = childMap.computeIfAbsent(bundle.getEventType().getBaseType(), baseType -> { - EventTypeTreeItem newTreeItem = new EventTypeTreeItem(bundle); + EventTypeTreeItem newTreeItem = new EventTypeTreeItem(bundle, comparator); newTreeItem.setExpanded(true); getChildren().add(newTreeItem); return newTreeItem; }); treeItem.insert(getTreePath(bundle)); + } void remove(EventBundle bundle) { @@ -96,8 +98,9 @@ class RootItem extends NavTreeItem { } @Override - public void resort(Comparator>> comp) { - childMap.values().forEach(ti -> ti.resort(comp)); + void resort(Comparator>> comp, Boolean recursive) { + comparator = comp; + childMap.values().forEach(ti -> ti.resort(comp, true)); } @Override From 883e48b0430ac947aa3941b552068a2c46bdfdfb Mon Sep 17 00:00:00 2001 From: jmillman Date: Tue, 24 Nov 2015 12:49:02 -0500 Subject: [PATCH 3/5] details view node / tree clean up and bugfixes reinstate wrongly removed layout constraints; bind subnodepane children to subnodes list; keep tree and main visualization in sync better --- .../timeline/datamodel/EventStripe.java | 2 - .../ui/detailview/EventBundleNodeBase.java | 16 ++++-- .../ui/detailview/EventClusterNode.java | 50 ++++++++++++++----- .../ui/detailview/EventDetailsChart.java | 2 +- .../ui/detailview/EventStripeNode.java | 11 ++-- .../ui/detailview/tree/EventTypeTreeItem.java | 5 +- 6 files changed, 61 insertions(+), 25 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java index f46cbd82da..7424727fcf 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java @@ -180,6 +180,4 @@ public final class EventStripe implements EventBundle { public String toString() { return "EventStripe{" + "description=" + description + ", eventIDs=" + eventIDs.size() + '}'; } - - } diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventBundleNodeBase.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventBundleNodeBase.java index 730c97bf6b..87dc2f56ae 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventBundleNodeBase.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventBundleNodeBase.java @@ -18,7 +18,6 @@ */ package org.sleuthkit.autopsy.timeline.ui.detailview; -import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.List; @@ -32,7 +31,10 @@ import javafx.animation.KeyFrame; import javafx.animation.KeyValue; import javafx.animation.Timeline; import javafx.application.Platform; +import javafx.beans.binding.Bindings; import javafx.beans.property.SimpleObjectProperty; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; import javafx.concurrent.Task; import javafx.event.EventHandler; import javafx.geometry.Insets; @@ -120,7 +122,7 @@ public abstract class EventBundleNodeBase subNodes = new ArrayList<>(); + final ObservableList subNodes = FXCollections.observableArrayList(); final Pane subNodePane = new Pane(); final Label descrLabel = new Label(); final Label countLabel = new Label(); @@ -152,7 +154,11 @@ public abstract class EventBundleNodeBase setDescriptionVisibiltiyImpl(descVisibility.get())); descVisibility.set(DescriptionVisibility.SHOWN); //trigger listener for initial value + + Bindings.bindContent(subNodePane.getChildren(), subNodes); } final DescriptionLoD getDescriptionLoD() { @@ -342,6 +350,8 @@ public abstract class EventBundleNodeBase { private static final Logger LOGGER = Logger.getLogger(EventClusterNode.class.getName()); + /** + * Use this recursive function to flatten a tree of nodes into an single + * stream. More specifically it takes an EventStripeNode and produces a + * stream of EventStripes conaiting the stripes for the given node and all + * child eventStripes, ignoring intervening EventCluster nodes. + * + * @see + * #loadSubBundles(org.sleuthkit.autopsy.timeline.zooming.DescriptionLoD.RelativeDetail) + * for usage + */ + private final static Function> stripeFlattener = new Function>() { + @Override + public Stream apply(EventStripeNode node) { + return Stream.concat( + Stream.of(node.getEventStripe()), + node.getSubNodes().stream().flatMap(clusterNode -> clusterNode.getSubNodes().stream().flatMap(this))); + } + }; + private static final BorderWidths CLUSTER_BORDER_WIDTHS = new BorderWidths(2, 1, 2, 1); private static final Image PLUS = new Image("/org/sleuthkit/autopsy/timeline/images/plus-button.png"); // NON-NLS //NOI18N private static final Image MINUS = new Image("/org/sleuthkit/autopsy/timeline/images/minus-button.png"); // NON-NLS //NOI18N @@ -89,6 +113,7 @@ final public class EventClusterNode extends EventBundleNodeBase> loggedTask = new Task>() { + Task> loggedTask = new LoggedTask>(Bundle.EventStripeNode_loggedTask_name(), false) { private volatile DescriptionLoD loadedDescriptionLoD = getDescriptionLoD().withRelativeDetail(relativeDetail); - { - updateTitle(Bundle.EventStripeNode_loggedTask_name()); - } - @Override protected List call() throws Exception { List bundles; @@ -182,7 +203,9 @@ final public class EventClusterNode extends EventBundleNodeBase eventStripe.withParent(getEventCluster())); + return bundles.stream() + .map(eventStripe -> eventStripe.withParent(getEventCluster())) + .collect(Collectors.toList()); } @Override @@ -190,14 +213,16 @@ final public class EventClusterNode extends EventBundleNodeBase bundles = get(); + //clear the existing subnodes + List transform = subNodes.stream().flatMap(stripeFlattener).collect(Collectors.toList()); + chart.getEventStripes().removeAll(transform); + subNodes.clear(); if (bundles.isEmpty()) { - subNodePane.getChildren().clear(); getChildren().setAll(subNodePane, infoHBox); descLOD.set(getEventBundle().getDescriptionLoD()); } else { chart.getEventStripes().addAll(bundles); - subNodes.addAll(Lists.transform(bundles, EventClusterNode.this::createStripeNode)); - subNodePane.getChildren().setAll(subNodes); + subNodes.addAll(Lists.transform(bundles, EventClusterNode.this::createChildNode)); getChildren().setAll(new VBox(infoHBox, subNodePane)); descLOD.set(loadedDescriptionLoD); } @@ -214,7 +239,8 @@ final public class EventClusterNode extends EventBundleNodeBase impl * @return all the nodes that pass the given predicate */ synchronized Iterable> getNodes(Predicate> p) { - //use this recursive function to flatten the tree of nodes into an iterable. + //use this recursive function to flatten the tree of nodes into an single stream. Function, Stream>> stripeFlattener = new Function, Stream>>() { @Override diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventStripeNode.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventStripeNode.java index 573302a100..f6861735bd 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventStripeNode.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventStripeNode.java @@ -73,17 +73,20 @@ final public class EventStripeNode extends EventBundleNodeBase> path) { - EventBundle head = path.removeFirst(); EventDescriptionTreeItem descTreeItem = childMap.get(head.getDescription()); if (descTreeItem != null) { if (path.isEmpty() == false) { descTreeItem.remove(path); - } else if (descTreeItem.getChildren().isEmpty()) { + } + if (descTreeItem.getChildren().isEmpty()) { childMap.remove(head.getDescription()); getChildren().remove(descTreeItem); - } } } From 60518dcf073d64aeb241645d87991d9662a410fa Mon Sep 17 00:00:00 2001 From: Karl Mortensen Date: Tue, 24 Nov 2015 13:42:49 -0500 Subject: [PATCH 4/5] Add autopurge for ZooKeeper --- docs/doxygen-user/images/autoPurge.PNG | Bin 0 -> 23368 bytes docs/doxygen-user/images/dataDir.PNG | Bin 20340 -> 23260 bytes docs/doxygen-user/images/tickTime.PNG | Bin 20349 -> 23234 bytes docs/doxygen-user/installSolr.dox | 16 ++++++++++------ 4 files changed, 10 insertions(+), 6 deletions(-) create mode 100755 docs/doxygen-user/images/autoPurge.PNG diff --git a/docs/doxygen-user/images/autoPurge.PNG b/docs/doxygen-user/images/autoPurge.PNG new file mode 100755 index 0000000000000000000000000000000000000000..a88c4811ee2031baf0821daf4b7b2c829cd94b77 GIT binary patch literal 23368 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 Y9&Nt8F@`wQw12@!ANm{NigW0H0NaWng8%>k literal 0 HcmV?d00001 diff --git a/docs/doxygen-user/images/dataDir.PNG b/docs/doxygen-user/images/dataDir.PNG index b4b6eb0693a297095d0742d6a1115731144c545e..8ec0c5092104fe720266e95b8153d37649768b63 100755 GIT binary patch literal 23260 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 literal 20340 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 m$\

\image html dataDir.PNG

-7. Edit "C:\Bitnami\solr-4.10.3-0\apache-solr\resources/log4j.properties" to configure Solr log settings: +7. Edit the file "C:\Bitnami\solr-4.10.3-0\apache-solr\solr\zoo.cfg" to add the lines autopurge.snapRetainCount=3 and autopurge.purgeInterval=1 as shown in the screenshot below. +

+\image html autoPurge.PNG +

+8. Edit "C:\Bitnami\solr-4.10.3-0\apache-solr\resources/log4j.properties" to configure Solr log settings: - Increase the log rotation size threshold (_log4j\.appender\.file\.MaxFileSize_) from 4MB to 100MB. - Remove the _CONSOLE_ appender from the _log4j\.rootLogger_ line.

@@ -85,9 +89,9 @@ The log file should end up looking like this (modified lines are highlighted in

\image html log4j.PNG

-8. From an Autopsy installation, copy the folder "C:\Program Files\Autopsy-4.0\autopsy\solr\solr\configsets" to "C:\Bitnami\solr-4.10.3-0\apache-solr\solr". -9. From an Autopsy installation, copy the folder "C:\Program Files\Autopsy-4.0\autopsy\solr\solr\lib" to "C:\Bitnami\solr-4.10.3-0\apache-solr\solr". -10. Start a Windows command prompt as administrator by pressing _Start_, typing _command_, right clicking on _Command Prompt_, and clicking on _Run as administrator_. Then run the following command to install the _solrJetty_ service: +9. From an Autopsy installation, copy the folder "C:\Program Files\Autopsy-4.0\autopsy\solr\solr\configsets" to "C:\Bitnami\solr-4.10.3-0\apache-solr\solr". +10. From an Autopsy installation, copy the folder "C:\Program Files\Autopsy-4.0\autopsy\solr\solr\lib" to "C:\Bitnami\solr-4.10.3-0\apache-solr\solr". +11. Start a Windows command prompt as administrator by pressing _Start_, typing _command_, right clicking on _Command Prompt_, and clicking on _Run as administrator_. Then run the following command to install the _solrJetty_ service:

cmd /c C:\\Bitnami\\solr-4.10.3-0\\apache-solr\\scripts\\serviceinstall.bat INSTALL

@@ -95,13 +99,13 @@ The log file should end up looking like this (modified lines are highlighted in

\image html solrinstall1.PNG

-11. Press _Start_, type _services.msc_, and press _Enter_. Find _solrJetty_. If the service is running, press _Stop the service_, then double click it, and switch to the _Log On_ tab to change the logon credentials to a user who will have access to read and write the primary shared drive. If the machine is on a domain, the Account Name will be in the form of _DOMAINNAME\\username_ as shown in the example below. Note that in the screenshot below, the domain name is _DOMAIN_ and the user name is _username_. These are just examples, not real values. +12. Press _Start_, type _services.msc_, and press _Enter_. Find _solrJetty_. If the service is running, press _Stop the service_, then double click it, and switch to the _Log On_ tab to change the logon credentials to a user who will have access to read and write the primary shared drive. If the machine is on a domain, the Account Name will be in the form of _DOMAINNAME\\username_ as shown in the example below. Note that in the screenshot below, the domain name is _DOMAIN_ and the user name is _username_. These are just examples, not real values.

\image html solrinstall2.PNG
If the machine is on a domain, **make sure** to select the domain with the mouse by going to the _Log On_ tab, clicking _Browse_, then clicking _Locations_ and selecting the domain of interest. Then enter the user name desired and press _Check Names_. When that completes, press _OK_, type in the password once for each box and press _OK_. You may see "The user has been granted the log on as a service right." -12. You should be able to see the Solr service in a web browser via the URL http://localhost:8983/solr/#/ as shown in the screenshot below. +13. You should be able to see the Solr service in a web browser via the URL http://localhost:8983/solr/#/ as shown in the screenshot below.

\image html solrinstall3.PNG

From b36d3732dd19500d4428dc862ee95e539268a7d0 Mon Sep 17 00:00:00 2001 From: jmillman Date: Tue, 24 Nov 2015 13:39:39 -0500 Subject: [PATCH 5/5] create ImmutableSets in constructor rather than on demand in getters --- .../timeline/datamodel/EventBundle.java | 2 +- .../timeline/datamodel/EventCluster.java | 29 ++++--- .../timeline/datamodel/EventStripe.java | 81 +++++++++++-------- .../ui/detailview/EventClusterNode.java | 2 +- .../ui/detailview/EventStripeNode.java | 4 +- 5 files changed, 67 insertions(+), 51 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventBundle.java b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventBundle.java index ba3333e7f7..7361bf5d88 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventBundle.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventBundle.java @@ -47,7 +47,7 @@ public interface EventBundle> { Optional getParentBundle(); - default long getCount() { + default int getCount() { return getEventIDs().size(); } diff --git a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventCluster.java b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventCluster.java index 975b0cc40f..ac5a02d007 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventCluster.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventCluster.java @@ -18,9 +18,9 @@ */ package org.sleuthkit.autopsy.timeline.datamodel; +import com.google.common.collect.ImmutableSet; import com.google.common.collect.ImmutableSortedSet; import com.google.common.collect.Sets; -import java.util.Collections; import java.util.Comparator; import java.util.Objects; import java.util.Optional; @@ -89,28 +89,28 @@ public class EventCluster implements EventBundle { /** * the set of ids of the clustered events */ - final private Set eventIDs; + final private ImmutableSet eventIDs; /** * the ids of the subset of clustered events that have at least one tag * applied to them */ - private final Set tagged; + private final ImmutableSet tagged; /** * the ids of the subset of clustered events that have at least one hash set * hit */ - private final Set hashHits; + private final ImmutableSet hashHits; private EventCluster(Interval spanningInterval, EventType type, Set eventIDs, Set hashHits, Set tagged, String description, DescriptionLoD lod, EventStripe parent) { this.span = spanningInterval; this.type = type; - this.hashHits = hashHits; - this.tagged = tagged; + this.hashHits = ImmutableSet.copyOf(hashHits); + this.tagged = ImmutableSet.copyOf(tagged); this.description = description; - this.eventIDs = eventIDs; + this.eventIDs = ImmutableSet.copyOf(eventIDs); this.lod = lod; this.parent = parent; } @@ -139,18 +139,21 @@ public class EventCluster implements EventBundle { } @Override - public Set getEventIDs() { - return Collections.unmodifiableSet(eventIDs); + @SuppressWarnings("ReturnOfCollectionOrArrayField") + public ImmutableSet getEventIDs() { + return eventIDs; } @Override - public Set getEventIDsWithHashHits() { - return Collections.unmodifiableSet(hashHits); + @SuppressWarnings("ReturnOfCollectionOrArrayField") + public ImmutableSet getEventIDsWithHashHits() { + return hashHits; } @Override - public Set getEventIDsWithTags() { - return Collections.unmodifiableSet(tagged); + @SuppressWarnings("ReturnOfCollectionOrArrayField") + public ImmutableSet getEventIDsWithTags() { + return tagged; } @Override diff --git a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java index 7424727fcf..7a6bb4be42 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/datamodel/EventStripe.java @@ -19,13 +19,11 @@ package org.sleuthkit.autopsy.timeline.datamodel; import com.google.common.base.Preconditions; -import java.util.Collections; +import com.google.common.collect.ImmutableSet; +import com.google.common.collect.ImmutableSortedSet; import java.util.Comparator; -import java.util.HashSet; import java.util.Optional; -import java.util.Set; import java.util.SortedSet; -import java.util.TreeSet; import javax.annotation.concurrent.Immutable; import org.python.google.common.base.Objects; import org.sleuthkit.autopsy.timeline.datamodel.eventtype.EventType; @@ -50,7 +48,7 @@ public final class EventStripe implements EventBundle { private final EventCluster parent; - private final SortedSet clusters = new TreeSet<>(Comparator.comparing(EventCluster::getStartMillis)); + private final ImmutableSortedSet clusters; /** * the type of all the events @@ -70,59 +68,70 @@ public final class EventStripe implements EventBundle { /** * the set of ids of the events */ - private final Set eventIDs = new HashSet<>(); + private final ImmutableSet eventIDs; /** * the ids of the subset of events that have at least one tag applied to * them */ - private final Set tagged = new HashSet<>(); + private final ImmutableSet tagged; /** * the ids of the subset of events that have at least one hash set hit */ - private final Set hashHits = new HashSet<>(); + private final ImmutableSet hashHits; public EventStripe withParent(EventCluster parent) { - EventStripe eventStripe = new EventStripe(parent, this.type, this.description, this.lod); - eventStripe.clusters.addAll(clusters); - eventStripe.eventIDs.addAll(eventIDs); - eventStripe.tagged.addAll(tagged); - eventStripe.hashHits.addAll(hashHits); + EventStripe eventStripe = new EventStripe(parent, this.type, this.description, this.lod, clusters, eventIDs, tagged, hashHits); return eventStripe; } - private EventStripe(EventCluster parent, EventType type, String description, DescriptionLoD lod) { + private EventStripe(EventCluster parent, EventType type, String description, DescriptionLoD lod, SortedSet clusters, ImmutableSet eventIDs, ImmutableSet tagged, ImmutableSet hashHits) { this.parent = parent; this.type = type; this.description = description; this.lod = lod; + this.clusters = ImmutableSortedSet.copyOf(Comparator.comparing(EventCluster::getStartMillis), clusters); + + this.eventIDs = eventIDs; + this.tagged = tagged; + this.hashHits = hashHits; } public EventStripe(EventCluster cluster, EventCluster parent) { - clusters.add(cluster); + this.clusters = ImmutableSortedSet.orderedBy(Comparator.comparing(EventCluster::getStartMillis)) + .add(cluster).build(); type = cluster.getEventType(); description = cluster.getDescription(); lod = cluster.getDescriptionLoD(); - eventIDs.addAll(cluster.getEventIDs()); - tagged.addAll(cluster.getEventIDsWithTags()); - hashHits.addAll(cluster.getEventIDsWithHashHits()); + eventIDs = cluster.getEventIDs(); + tagged = cluster.getEventIDsWithTags(); + hashHits = cluster.getEventIDsWithHashHits(); this.parent = parent; } private EventStripe(EventStripe u, EventStripe v) { - clusters.addAll(u.clusters); - clusters.addAll(v.clusters); + clusters = ImmutableSortedSet.orderedBy(Comparator.comparing(EventCluster::getStartMillis)) + .addAll(u.getClusters()) + .addAll(v.getClusters()) + .build(); + type = u.getEventType(); description = u.getDescription(); lod = u.getDescriptionLoD(); - eventIDs.addAll(u.getEventIDs()); - eventIDs.addAll(v.getEventIDs()); - tagged.addAll(u.getEventIDsWithTags()); - tagged.addAll(v.getEventIDsWithTags()); - hashHits.addAll(u.getEventIDsWithHashHits()); - hashHits.addAll(v.getEventIDsWithHashHits()); + eventIDs = ImmutableSet.builder() + .addAll(u.getEventIDs()) + .addAll(v.getEventIDs()) + .build(); + tagged = ImmutableSet.builder() + .addAll(u.getEventIDsWithTags()) + .addAll(v.getEventIDsWithTags()) + .build(); + hashHits = ImmutableSet.builder() + .addAll(u.getEventIDsWithHashHits()) + .addAll(v.getEventIDsWithHashHits()) + .build(); parent = u.getParentBundle().orElse(v.getParentBundle().orElse(null)); } @@ -147,18 +156,21 @@ public final class EventStripe implements EventBundle { } @Override - public Set getEventIDs() { - return Collections.unmodifiableSet(eventIDs); + @SuppressWarnings("ReturnOfCollectionOrArrayField") + public ImmutableSet getEventIDs() { + return eventIDs; } @Override - public Set getEventIDsWithHashHits() { - return Collections.unmodifiableSet(hashHits); + @SuppressWarnings("ReturnOfCollectionOrArrayField") + public ImmutableSet getEventIDsWithHashHits() { + return hashHits; } @Override - public Set getEventIDsWithTags() { - return Collections.unmodifiableSet(tagged); + @SuppressWarnings("ReturnOfCollectionOrArrayField") + public ImmutableSet getEventIDsWithTags() { + return tagged; } @Override @@ -172,8 +184,9 @@ public final class EventStripe implements EventBundle { } @Override - public SortedSet< EventCluster> getClusters() { - return Collections.unmodifiableSortedSet(clusters); + @SuppressWarnings("ReturnOfCollectionOrArrayField") + public ImmutableSortedSet< EventCluster> getClusters() { + return clusters; } @Override diff --git a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventClusterNode.java b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventClusterNode.java index 8e5c600932..f348fd6873 100644 --- a/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventClusterNode.java +++ b/Core/src/org/sleuthkit/autopsy/timeline/ui/detailview/EventClusterNode.java @@ -143,7 +143,7 @@ final public class EventClusterNode extends EventBundleNodeBase