Sleuth Kit Java Bindings (JNI)  4.2
Java bindings for using The Sleuth Kit
SleuthkitItemVisitor.java
Go to the documentation of this file.
1 /*
2  * Autopsy Forensic Browser
3  *
4  * Copyright 2011 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  */
19 package org.sleuthkit.datamodel;
20 
35 public interface SleuthkitItemVisitor<T> {
36 
43  T visit(Directory d);
44 
51  T visit(File f);
52 
59  T visit(FileSystem fs);
60 
67  T visit(Image i);
68 
75  T visit(Volume v);
76 
83  T visit(VolumeSystem vs);
84 
92 
100 
107  T visit(LayoutFile lf);
108 
115  T visit(VirtualDirectory ld);
116 
123  T visit(DerivedFile df);
124 
131  T visit(LocalFile lf);
132 
142  static abstract public class Default<T> implements SleuthkitItemVisitor<T> {
143 
144  protected abstract T defaultVisit(SleuthkitVisitableItem s);
145 
146  @Override
147  public T visit(Directory d) {
148  return defaultVisit(d);
149  }
150 
151  @Override
152  public T visit(File f) {
153  return defaultVisit(f);
154  }
155 
156  @Override
157  public T visit(FileSystem fs) {
158  return defaultVisit(fs);
159  }
160 
161  @Override
162  public T visit(Image i) {
163  return defaultVisit(i);
164  }
165 
166  @Override
167  public T visit(Volume v) {
168  return defaultVisit(v);
169  }
170 
171  @Override
172  public T visit(VolumeSystem vs) {
173  return defaultVisit(vs);
174  }
175 
176  @Override
177  public T visit(BlackboardArtifact ba) {
178  return defaultVisit(ba);
179  }
180 
181  @Override
183  return defaultVisit(tw);
184  }
185 
186  @Override
187  public T visit(LayoutFile lf) {
188  return defaultVisit(lf);
189  }
190 
191  @Override
192  public T visit(VirtualDirectory vd) {
193  return defaultVisit(vd);
194  }
195 
196  @Override
197  public T visit(DerivedFile df) {
198  return defaultVisit(df);
199  }
200 
201  @Override
202  public T visit(LocalFile lf) {
203  return defaultVisit(lf);
204  }
205  }
206 }
abstract T defaultVisit(SleuthkitVisitableItem s)

Copyright © 2011-2015 Brian Carrier. (carrier -at- sleuthkit -dot- org)
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.