Exemplo n.º 1
0
        private void processExport(EA.Repository repository)
        {
            var dlg = new Export2DitaForm();

            if (dlg.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            var package = repository.GetTreeSelectedPackage();

            ExportPackage.Export(
                repository,
                package,
                dlg.DitaMapFile,
                new ExportOptions()
            {
                HideEmptyElements = dlg.HideEmptyElements
            });
        }
Exemplo n.º 2
0
        private void ProcessImportModulePackage(ExportPackage exportPackage, string tempFolder, CollisionResolution collisionResolution)
        {
            try
            {
                var filePath = Path.Combine(tempFolder, exportPackage.PackageFileName);
                if (!File.Exists(filePath))
                {
                    return;
                }

                var packageType = exportPackage.PackageType;
                var packageName = exportPackage.PackageName;
                var version     = exportPackage.Version;

                var existPackage = PackageController.Instance.GetExtensionPackage(
                    Null.NullInteger,
                    p => p.PackageType == packageType && p.Name == packageName);
                if (existPackage != null &&
                    (existPackage.Version > version ||
                     (existPackage.Version == version &&
                      collisionResolution == CollisionResolution.Ignore)))
                {
                    this.Result.AddLogEntry(
                        "Import Package ignores",
                        $"{packageName} has higher version {existPackage.Version} installed, ignore import it");
                    return;
                }

                this.InstallPackage(filePath);
                this.Result.AddLogEntry("Import Package completed", $"{packageName} version: {version}");
            }
            catch (Exception ex)
            {
                this.Result.AddLogEntry(
                    "Import Package error",
                    $"{exportPackage.PackageName} : {exportPackage.Version} - {ex.Message}");
                Logger.Error(ex);
            }
        }
Exemplo n.º 3
0
        void bkwDataLoader_DoWork(object sender, DoWorkEventArgs e)
        {
            Dictionary <List <string>, ManualResetEvent>   handle = (Dictionary <List <string>, ManualResetEvent>)((object[])e.Argument)[0];
            Dictionary <ManualResetEvent, List <RowData> > Filler = (Dictionary <ManualResetEvent, List <RowData> >)((object[])e.Argument)[1];
            List <string> exportFieldList = (List <string>)((object[])e.Argument)[2];

            foreach (List <string> splitList in handle.Keys)
            {
                try
                {
                    if (ExportPackage != null)
                    {
                        ExportPackageEventArgs args = new ExportPackageEventArgs();
                        foreach (string var in splitList)
                        {
                            args.List.Add(var);
                        }
                        foreach (string var in exportFieldList)
                        {
                            if (_ExportableFields.Contains(var))
                            {
                                args.ExportFields.Add(var);
                            }
                        }
                        ExportPackage.Invoke(this, args);
                        Filler[handle[splitList]].AddRange(args.Items);
                    }
                }
                catch (Exception ex)
                {
                    //CurrentUser user = CurrentUser.Instance;
                    //SmartSchool.ExceptionHandler.BugReporter.ReportException("SmartSchool", user.SystemVersion, ex, false);
                }
                finally
                {
                    handle[splitList].Set();
                }
            }
        }
Exemplo n.º 4
0
        private void saveExportPackage(ExportPackage ep)
        {
            XmlSerializer serializer = null;
            FileStream    stream     = null;

            try
            {
                serializer = new XmlSerializer(typeof(Structures.Core.ExportPackage));
                stream     = new FileStream(ep.xmlFilePath, FileMode.Create, FileAccess.Write);
                serializer.Serialize(stream, ep);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (stream != null)
                {
                    stream.Close();
                }
            }
        }
 /// <summary>
 /// 填入這個Package的RowData
 /// </summary>
 public List <RowData> GetExportData(IEnumerable <string> idInPackage, IEnumerable <string> selectedFields)
 {
     if (ExportPackage != null)
     {
         ExportPackageEventArgs args = new ExportPackageEventArgs();
         foreach (string var in idInPackage)
         {
             args.List.Add(var);
         }
         foreach (string var in selectedFields)
         {
             if (_ExportableFields.Contains(var))
             {
                 args.ExportFields.Add(var);
             }
         }
         ExportPackage.Invoke(this, args);
         return(args.Items);
     }
     else
     {
         return(new List <RowData>());
     }
 }