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); } }
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()); }