Examples of CaseDbTransaction


Examples of org.sleuthkit.datamodel.SleuthkitCase.CaseDbTransaction

                throw new TskCoreException(msg);
            }
            rootsToAdd.add(localFile);
        }

        CaseDbTransaction trans = tskCase.beginTransaction();
        // make a virtual top-level directory for this set of files/dirs
        final VirtualDirectory fileSetRootDir = addLocalFileSetRootDir(trans);

        try {
            // recursively add each item in the set
            for (java.io.File localRootToAdd : rootsToAdd) {
                AbstractFile localFileAdded = addLocalDirInt(trans, fileSetRootDir, localRootToAdd, addProgressUpdater);

                if (localFileAdded == null) {
                    String msg = NbBundle
                            .getMessage(this.getClass(), "FileManager.addLocalFilesDirs.exception.cantAdd.msg",
                                        localRootToAdd.getAbsolutePath());
                    logger.log(Level.SEVERE, msg);
                    throw new TskCoreException(msg);
                } else {
                    //added.add(localFileAdded);
                    //send new content event
                    //for now reusing ingest events, in future this will be replaced by datamodel / observer sending out events
                    // @@@ Is this the right place for this? A directory tree refresh will be triggered, so this may be creating a race condition
                    // since the transaction is not yet committed.  
                    IngestServices.getInstance().fireModuleContentEvent(new ModuleContentEvent(localFileAdded));
                }
            }

            trans.commit();
        } catch (TskCoreException ex) {
            trans.rollback();
        }
        return fileSetRootDir;
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.