using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using Laserfiche.DocumentServices; using Laserfiche.RepositoryAccess; namespace ImportEngineExample { class Program { static void Main(string[] args) { #region Login, create connection RepositoryRegistration myRepoReg = new RepositoryRegistration("localhost", "LaserInvestigators"); Session session = new Session(); session.LogIn(myRepoReg); #endregion string listFilePath = @"C:\Temp\20140625T143319\import.xml"; // initialize an instance of ImportEngine ImportEngine importEngine = new ImportEngine(session); // configure import engine, the folder and volume to import importEngine.RootPath = "\\"; importEngine.VolumeName = "DEFAULT"; importEngine.IgnoreErrorAndContinue = true; // begin importing ImportOperation importOp = importEngine.BeginProcess(listFilePath); // wait util the operation is complete, whether or not it is successful while (!importOp.IsCompleted) { // print out the elapsed time and the current import phase Console.WriteLine(importOp.ElapsedTime.ToString() + ":" + importOp.Phase.ToString()); // wait for 1 second, and then refresh the status Thread.Sleep(1000); importOp.Refresh(); } // if there were any errors when importing, print them if (importOp.HasFailed) Console.WriteLine("Failure Reason:" + importOp.FailureReason.Message); else if (importOp.AllLoggedExceptions != null && importOp.AllLoggedExceptions.Count > 0) { Console.WriteLine("Warning:"); foreach (ImportEngineException e in importOp.AllLoggedExceptions) Console.WriteLine(e.Message); } else Console.WriteLine("Success!"); // log out of the repository session.LogOut(); } } }