public void Process(AntidotePackagePipelineArgs args)
        {
            BehaviourOptions options = new BehaviourOptions(InstallMode.Undefined, MergeMode.Undefined);
            IProcessor<PackageEntry> transform = new InstallerConfigurationTransform(options);
            IConverter<Item, PackageEntry> converter = new ItemToEntryConverter();
            converter.Transforms.Add(transform);

            foreach (AntidoteFileSourceDefinition fileSourceDefinition in args.AntidotePackageDefinition.GetFileSources(SourceStatus.Existing))
            {
                ISource<PackageEntry> fileSource = fileSourceDefinition.FileInfo.ToFileSource();
                args.AntidotePackageProject.Sources.Add(fileSource);
            }

            foreach (AntidoteItemSourceDefinition itemSourceDefinition in args.AntidotePackageDefinition.GetItemSources(SourceStatus.Existing))
            {
                Item item = itemSourceDefinition.GetItem();
                ItemSource fileSource = item.GenerateItemSource(converter);
                args.AntidotePackageProject.Sources.Add(fileSource);
            }
        }
Beispiel #2
0
        private string FormatInstallOptions(BehaviourOptions options)
        {
            if (!options.IsDefined)
            {
                return(Translate.Text("Undefined"));
            }
            InstallMode itemMode = options.ItemMode;

            if (itemMode == InstallMode.Undefined)
            {
                return(Translate.Text("Ask User"));
            }
            var builder = new StringBuilder(50);

            builder.Append(Translate.Text(itemMode.ToString()));
            if (itemMode == InstallMode.Merge)
            {
                builder.Append(" / ");
                builder.Append(Translate.Text(options.ItemMergeMode.ToString()));
            }
            return(builder.ToString());
        }