mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-09-18 17:47:54 +08:00
Rename a few classes, and update package install API
Installing a package via the PackageManager now returns a package info containing a subset of metadata properties. --HG-- branch : dev rename : src/Orchard/Packaging/IPackageSourceManager.cs => src/Orchard/Packaging/IPackagingSourceManager.cs rename : src/Orchard/Packaging/PackageEntry.cs => src/Orchard/Packaging/PackagingEntry.cs rename : src/Orchard/Packaging/PackageSource.cs => src/Orchard/Packaging/PackagingSource.cs rename : src/Orchard/Packaging/PackageSourceManager.cs => src/Orchard/Packaging/PackagingSourceManager.cs
This commit is contained in:
@@ -13,17 +13,17 @@ namespace Futures.Modules.Packaging.Controllers {
|
|||||||
[Themed, Admin]
|
[Themed, Admin]
|
||||||
public class PackagingController : Controller {
|
public class PackagingController : Controller {
|
||||||
private readonly IPackageManager _packageManager;
|
private readonly IPackageManager _packageManager;
|
||||||
private readonly IPackageSourceManager _packageSourceManager;
|
private readonly IPackagingSourceManager _packagingSourceManager;
|
||||||
private readonly IExtensionManager _extensionManager;
|
private readonly IExtensionManager _extensionManager;
|
||||||
private readonly INotifier _notifier;
|
private readonly INotifier _notifier;
|
||||||
|
|
||||||
public PackagingController(
|
public PackagingController(
|
||||||
IPackageManager packageManager,
|
IPackageManager packageManager,
|
||||||
IPackageSourceManager packageSourceManager,
|
IPackagingSourceManager packagingSourceManager,
|
||||||
IExtensionManager extensionManager,
|
IExtensionManager extensionManager,
|
||||||
INotifier notifier) {
|
INotifier notifier) {
|
||||||
_packageManager = packageManager;
|
_packageManager = packageManager;
|
||||||
_packageSourceManager = packageSourceManager;
|
_packagingSourceManager = packagingSourceManager;
|
||||||
_extensionManager = extensionManager;
|
_extensionManager = extensionManager;
|
||||||
_notifier = notifier;
|
_notifier = notifier;
|
||||||
T = NullLocalizer.Instance;
|
T = NullLocalizer.Instance;
|
||||||
@@ -37,12 +37,12 @@ namespace Futures.Modules.Packaging.Controllers {
|
|||||||
|
|
||||||
public ActionResult Sources() {
|
public ActionResult Sources() {
|
||||||
return View("Sources", new PackagingSourcesViewModel {
|
return View("Sources", new PackagingSourcesViewModel {
|
||||||
Sources = _packageSourceManager.GetSources(),
|
Sources = _packagingSourceManager.GetSources(),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public ActionResult AddSource(string url) {
|
public ActionResult AddSource(string url) {
|
||||||
_packageSourceManager.AddSource(new PackageSource { Id = Guid.NewGuid(), FeedUrl = url });
|
_packagingSourceManager.AddSource(new PackagingSource { Id = Guid.NewGuid(), FeedUrl = url });
|
||||||
Update();
|
Update();
|
||||||
return RedirectToAction("Sources");
|
return RedirectToAction("Sources");
|
||||||
}
|
}
|
||||||
@@ -50,12 +50,12 @@ namespace Futures.Modules.Packaging.Controllers {
|
|||||||
|
|
||||||
public ActionResult Modules() {
|
public ActionResult Modules() {
|
||||||
return View("Modules", new PackagingModulesViewModel {
|
return View("Modules", new PackagingModulesViewModel {
|
||||||
Modules = _packageSourceManager.GetModuleList()
|
Modules = _packagingSourceManager.GetModuleList()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public ActionResult Update() {
|
public ActionResult Update() {
|
||||||
_packageSourceManager.UpdateLists();
|
_packagingSourceManager.UpdateLists();
|
||||||
_notifier.Information(T("List of available modules and themes is updated."));
|
_notifier.Information(T("List of available modules and themes is updated."));
|
||||||
return RedirectToAction("Index");
|
return RedirectToAction("Index");
|
||||||
}
|
}
|
||||||
@@ -64,14 +64,14 @@ namespace Futures.Modules.Packaging.Controllers {
|
|||||||
return View("Harvest", new PackagingHarvestViewModel {
|
return View("Harvest", new PackagingHarvestViewModel {
|
||||||
ExtensionName = extensionName,
|
ExtensionName = extensionName,
|
||||||
FeedUrl = feedUrl,
|
FeedUrl = feedUrl,
|
||||||
Sources = _packageSourceManager.GetSources(),
|
Sources = _packagingSourceManager.GetSources(),
|
||||||
Extensions = _extensionManager.AvailableExtensions()
|
Extensions = _extensionManager.AvailableExtensions()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public ActionResult Harvest(PackagingHarvestViewModel model) {
|
public ActionResult Harvest(PackagingHarvestViewModel model) {
|
||||||
model.Sources = _packageSourceManager.GetSources();
|
model.Sources = _packagingSourceManager.GetSources();
|
||||||
model.Extensions = _extensionManager.AvailableExtensions();
|
model.Extensions = _extensionManager.AvailableExtensions();
|
||||||
|
|
||||||
var packageData = _packageManager.Harvest(model.ExtensionName);
|
var packageData = _packageManager.Harvest(model.ExtensionName);
|
||||||
@@ -98,7 +98,7 @@ namespace Futures.Modules.Packaging.Controllers {
|
|||||||
|
|
||||||
public ActionResult Install(string syndicationId) {
|
public ActionResult Install(string syndicationId) {
|
||||||
var packageData = _packageManager.Download(syndicationId);
|
var packageData = _packageManager.Download(syndicationId);
|
||||||
_packageManager.Install(packageData);
|
_packageManager.Install(packageData.PackageStream);
|
||||||
_notifier.Information(T("Installed module"));
|
_notifier.Information(T("Installed module"));
|
||||||
return RedirectToAction("Modules");
|
return RedirectToAction("Modules");
|
||||||
}
|
}
|
||||||
|
@@ -86,7 +86,6 @@
|
|||||||
<Folder Include="Content\" />
|
<Folder Include="Content\" />
|
||||||
<Folder Include="Models\" />
|
<Folder Include="Models\" />
|
||||||
<Folder Include="Scripts\" />
|
<Folder Include="Scripts\" />
|
||||||
<Folder Include="Services\" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\..\..\Orchard\Orchard.Framework.csproj">
|
<ProjectReference Include="..\..\..\Orchard\Orchard.Framework.csproj">
|
||||||
|
@@ -5,7 +5,7 @@ using Orchard.Packaging;
|
|||||||
|
|
||||||
namespace Futures.Modules.Packaging.ViewModels {
|
namespace Futures.Modules.Packaging.ViewModels {
|
||||||
public class PackagingHarvestViewModel {
|
public class PackagingHarvestViewModel {
|
||||||
public IEnumerable<PackageSource> Sources { get; set; }
|
public IEnumerable<PackagingSource> Sources { get; set; }
|
||||||
public IEnumerable<ExtensionDescriptor> Extensions { get; set; }
|
public IEnumerable<ExtensionDescriptor> Extensions { get; set; }
|
||||||
|
|
||||||
[Required]
|
[Required]
|
||||||
|
@@ -3,6 +3,6 @@ using Orchard.Packaging;
|
|||||||
|
|
||||||
namespace Futures.Modules.Packaging.ViewModels {
|
namespace Futures.Modules.Packaging.ViewModels {
|
||||||
public class PackagingModulesViewModel {
|
public class PackagingModulesViewModel {
|
||||||
public IEnumerable<PackageEntry> Modules { get; set; }
|
public IEnumerable<PackagingEntry> Modules { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -3,6 +3,6 @@ using Orchard.Packaging;
|
|||||||
|
|
||||||
namespace Futures.Modules.Packaging.ViewModels {
|
namespace Futures.Modules.Packaging.ViewModels {
|
||||||
public class PackagingSourcesViewModel {
|
public class PackagingSourcesViewModel {
|
||||||
public IEnumerable<PackageSource> Sources { get; set; }
|
public IEnumerable<PackagingSource> Sources { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -367,14 +367,14 @@
|
|||||||
<Compile Include="Packaging\IPackageBuilder.cs" />
|
<Compile Include="Packaging\IPackageBuilder.cs" />
|
||||||
<Compile Include="Packaging\IPackageExpander.cs" />
|
<Compile Include="Packaging\IPackageExpander.cs" />
|
||||||
<Compile Include="Packaging\IPackageManager.cs" />
|
<Compile Include="Packaging\IPackageManager.cs" />
|
||||||
<Compile Include="Packaging\IPackageSourceManager.cs" />
|
<Compile Include="Packaging\IPackagingSourceManager.cs" />
|
||||||
<Compile Include="Packaging\PackageBuilder.cs" />
|
<Compile Include="Packaging\PackageBuilder.cs" />
|
||||||
<Compile Include="Packaging\PackageData.cs" />
|
<Compile Include="Packaging\PackageData.cs" />
|
||||||
<Compile Include="Packaging\PackageEntry.cs" />
|
<Compile Include="Packaging\PackagingEntry.cs" />
|
||||||
<Compile Include="Packaging\PackageExpander.cs" />
|
<Compile Include="Packaging\PackageExpander.cs" />
|
||||||
<Compile Include="Packaging\PackageManager.cs" />
|
<Compile Include="Packaging\PackageManager.cs" />
|
||||||
<Compile Include="Packaging\PackageSource.cs" />
|
<Compile Include="Packaging\PackagingSource.cs" />
|
||||||
<Compile Include="Packaging\PackageSourceManager.cs" />
|
<Compile Include="Packaging\PackagingSourceManager.cs" />
|
||||||
<Compile Include="Utility\Hash.cs" />
|
<Compile Include="Utility\Hash.cs" />
|
||||||
<Compile Include="Data\ISessionConfigurationCache.cs" />
|
<Compile Include="Data\ISessionConfigurationCache.cs" />
|
||||||
<Compile Include="Data\Migration\Generator\ISchemaCommandGenerator.cs" />
|
<Compile Include="Data\Migration\Generator\ISchemaCommandGenerator.cs" />
|
||||||
|
@@ -1,7 +1,15 @@
|
|||||||
|
using System;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
|
||||||
namespace Orchard.Packaging {
|
namespace Orchard.Packaging {
|
||||||
|
public class PackageInfo {
|
||||||
|
public string ExtensionName { get; set; }
|
||||||
|
public string ExtensionVersion { get; set; }
|
||||||
|
public string ExtensionType { get; set; }
|
||||||
|
public string ExtensionPath { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
public interface IPackageExpander : IDependency {
|
public interface IPackageExpander : IDependency {
|
||||||
void ExpandPackage(Stream packageStream);
|
PackageInfo ExpandPackage(Stream packageStream);
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -1,9 +1,11 @@
|
|||||||
|
using System.IO;
|
||||||
|
|
||||||
namespace Orchard.Packaging {
|
namespace Orchard.Packaging {
|
||||||
public interface IPackageManager : IDependency {
|
public interface IPackageManager : IDependency {
|
||||||
PackageData Harvest(string extensionName);
|
PackageData Harvest(string extensionName);
|
||||||
PackageData Download(string feedItemId);
|
PackageData Download(string feedItemId);
|
||||||
|
|
||||||
void Push(PackageData packageData, string feedUrl);
|
void Push(PackageData packageData, string feedUrl);
|
||||||
void Install(PackageData packageData);
|
PackageInfo Install(Stream packageStream);
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -1,13 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace Orchard.Packaging {
|
|
||||||
public interface IPackageSourceManager : IDependency {
|
|
||||||
IEnumerable<PackageSource> GetSources();
|
|
||||||
void AddSource(PackageSource source);
|
|
||||||
void RemoveSource(Guid id);
|
|
||||||
void UpdateLists();
|
|
||||||
|
|
||||||
IEnumerable<PackageEntry> GetModuleList();
|
|
||||||
}
|
|
||||||
}
|
|
13
src/Orchard/Packaging/IPackagingSourceManager.cs
Normal file
13
src/Orchard/Packaging/IPackagingSourceManager.cs
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace Orchard.Packaging {
|
||||||
|
public interface IPackagingSourceManager : IDependency {
|
||||||
|
IEnumerable<PackagingSource> GetSources();
|
||||||
|
void AddSource(PackagingSource source);
|
||||||
|
void RemoveSource(Guid id);
|
||||||
|
void UpdateLists();
|
||||||
|
|
||||||
|
IEnumerable<PackagingEntry> GetModuleList();
|
||||||
|
}
|
||||||
|
}
|
@@ -4,9 +4,7 @@ using System.IO.Packaging;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Xml.Linq;
|
using System.Xml.Linq;
|
||||||
using Orchard.Environment.Extensions;
|
|
||||||
using Orchard.FileSystems.VirtualPath;
|
using Orchard.FileSystems.VirtualPath;
|
||||||
using Orchard.FileSystems.WebSite;
|
|
||||||
|
|
||||||
namespace Orchard.Packaging {
|
namespace Orchard.Packaging {
|
||||||
public class PackageExpander : IPackageExpander {
|
public class PackageExpander : IPackageExpander {
|
||||||
@@ -23,6 +21,7 @@ namespace Orchard.Packaging {
|
|||||||
public Package Package { get; set; }
|
public Package Package { get; set; }
|
||||||
|
|
||||||
public string ExtensionName { get; set; }
|
public string ExtensionName { get; set; }
|
||||||
|
public string ExtensionVersion { get; set; }
|
||||||
public string ExtensionType { get; set; }
|
public string ExtensionType { get; set; }
|
||||||
|
|
||||||
public string TargetPath { get; set; }
|
public string TargetPath { get; set; }
|
||||||
@@ -32,7 +31,7 @@ namespace Orchard.Packaging {
|
|||||||
public XDocument Project { get; set; }
|
public XDocument Project { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ExpandPackage(Stream packageStream) {
|
public PackageInfo ExpandPackage(Stream packageStream) {
|
||||||
var context = new ExpandContext();
|
var context = new ExpandContext();
|
||||||
BeginPackage(context, packageStream);
|
BeginPackage(context, packageStream);
|
||||||
try {
|
try {
|
||||||
@@ -49,6 +48,13 @@ namespace Orchard.Packaging {
|
|||||||
finally {
|
finally {
|
||||||
EndPackage(context);
|
EndPackage(context);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return new PackageInfo {
|
||||||
|
ExtensionName = context.ExtensionName,
|
||||||
|
ExtensionVersion = context.ExtensionVersion,
|
||||||
|
ExtensionType = context.ExtensionType,
|
||||||
|
ExtensionPath = context.TargetPath
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ExtractFile(ExpandContext context, string relativePath) {
|
private void ExtractFile(ExpandContext context, string relativePath) {
|
||||||
@@ -143,6 +149,7 @@ namespace Orchard.Packaging {
|
|||||||
|
|
||||||
private void GetCoreProperties(ExpandContext context) {
|
private void GetCoreProperties(ExpandContext context) {
|
||||||
context.ExtensionName = context.Package.PackageProperties.Identifier;
|
context.ExtensionName = context.Package.PackageProperties.Identifier;
|
||||||
|
context.ExtensionVersion = context.Package.PackageProperties.Version;
|
||||||
|
|
||||||
var contentType = context.Package.PackageProperties.ContentType;
|
var contentType = context.Package.PackageProperties.ContentType;
|
||||||
if (contentType.StartsWith(ContentTypePrefix))
|
if (contentType.StartsWith(ContentTypePrefix))
|
||||||
|
@@ -7,17 +7,17 @@ using Orchard.Environment.Extensions;
|
|||||||
namespace Orchard.Packaging {
|
namespace Orchard.Packaging {
|
||||||
public class PackageManager : IPackageManager {
|
public class PackageManager : IPackageManager {
|
||||||
private readonly IExtensionManager _extensionManager;
|
private readonly IExtensionManager _extensionManager;
|
||||||
private readonly IPackageSourceManager _packageSourceManager;
|
private readonly IPackagingSourceManager _packagingSourceManager;
|
||||||
private readonly IPackageBuilder _packageBuilder;
|
private readonly IPackageBuilder _packageBuilder;
|
||||||
private readonly IPackageExpander _packageExpander;
|
private readonly IPackageExpander _packageExpander;
|
||||||
|
|
||||||
public PackageManager(
|
public PackageManager(
|
||||||
IExtensionManager extensionManager,
|
IExtensionManager extensionManager,
|
||||||
IPackageSourceManager packageSourceManager,
|
IPackagingSourceManager packagingSourceManager,
|
||||||
IPackageBuilder packageBuilder,
|
IPackageBuilder packageBuilder,
|
||||||
IPackageExpander packageExpander) {
|
IPackageExpander packageExpander) {
|
||||||
_extensionManager = extensionManager;
|
_extensionManager = extensionManager;
|
||||||
_packageSourceManager = packageSourceManager;
|
_packagingSourceManager = packagingSourceManager;
|
||||||
_packageBuilder = packageBuilder;
|
_packageBuilder = packageBuilder;
|
||||||
_packageExpander = packageExpander;
|
_packageExpander = packageExpander;
|
||||||
}
|
}
|
||||||
@@ -49,7 +49,7 @@ namespace Orchard.Packaging {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public PackageData Download(string feedItemId) {
|
public PackageData Download(string feedItemId) {
|
||||||
var entry = _packageSourceManager.GetModuleList().Single(x => x.SyndicationItem.Id == feedItemId);
|
var entry = _packagingSourceManager.GetModuleList().Single(x => x.SyndicationItem.Id == feedItemId);
|
||||||
var request = WebRequest.Create(entry.PackageStreamUri);
|
var request = WebRequest.Create(entry.PackageStreamUri);
|
||||||
using (var response = request.GetResponse()) {
|
using (var response = request.GetResponse()) {
|
||||||
using (var responseStream = response.GetResponseStream()) {
|
using (var responseStream = response.GetResponseStream()) {
|
||||||
@@ -70,8 +70,8 @@ namespace Orchard.Packaging {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Install(PackageData packageData) {
|
public PackageInfo Install(Stream packageStream) {
|
||||||
_packageExpander.ExpandPackage(packageData.PackageStream);
|
return _packageExpander.ExpandPackage(packageStream);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1,8 +1,8 @@
|
|||||||
using System.ServiceModel.Syndication;
|
using System.ServiceModel.Syndication;
|
||||||
|
|
||||||
namespace Orchard.Packaging {
|
namespace Orchard.Packaging {
|
||||||
public class PackageEntry {
|
public class PackagingEntry {
|
||||||
public PackageSource Source { get; set; }
|
public PackagingSource Source { get; set; }
|
||||||
public SyndicationFeed SyndicationFeed { get; set; }
|
public SyndicationFeed SyndicationFeed { get; set; }
|
||||||
public SyndicationItem SyndicationItem { get; set; }
|
public SyndicationItem SyndicationItem { get; set; }
|
||||||
public string PackageStreamUri { get; set; }
|
public string PackageStreamUri { get; set; }
|
@@ -1,7 +1,7 @@
|
|||||||
using System;
|
using System;
|
||||||
|
|
||||||
namespace Orchard.Packaging {
|
namespace Orchard.Packaging {
|
||||||
public class PackageSource {
|
public class PackagingSource {
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
public string FeedUrl { get; set; }
|
public string FeedUrl { get; set; }
|
||||||
}
|
}
|
@@ -9,38 +9,38 @@ using System.Xml.Serialization;
|
|||||||
using Orchard.FileSystems.AppData;
|
using Orchard.FileSystems.AppData;
|
||||||
|
|
||||||
namespace Orchard.Packaging {
|
namespace Orchard.Packaging {
|
||||||
public class PackageSourceManager : IPackageSourceManager {
|
public class PackagingSourceManager : IPackagingSourceManager {
|
||||||
private readonly IAppDataFolder _appDataFolder;
|
private readonly IAppDataFolder _appDataFolder;
|
||||||
private static readonly XmlSerializer _sourceSerializer = new XmlSerializer(typeof(List<PackageSource>), new XmlRootAttribute("Sources"));
|
private static readonly XmlSerializer _sourceSerializer = new XmlSerializer(typeof(List<PackagingSource>), new XmlRootAttribute("Sources"));
|
||||||
|
|
||||||
public PackageSourceManager(IAppDataFolder appDataFolder) {
|
public PackagingSourceManager(IAppDataFolder appDataFolder) {
|
||||||
_appDataFolder = appDataFolder;
|
_appDataFolder = appDataFolder;
|
||||||
}
|
}
|
||||||
|
|
||||||
static string GetSourcesPath() {
|
static string GetSourcesPath() {
|
||||||
return ".Packaging/Sources.xml";
|
return ".Packaging/Sources.xml";
|
||||||
}
|
}
|
||||||
static string GetFeedCachePath(PackageSource source) {
|
static string GetFeedCachePath(PackagingSource source) {
|
||||||
return ".Packaging/Feed." + source.Id.ToString("n") + ".xml";
|
return ".Packaging/Feed." + source.Id.ToString("n") + ".xml";
|
||||||
}
|
}
|
||||||
|
|
||||||
public IEnumerable<PackageSource> GetSources() {
|
public IEnumerable<PackagingSource> GetSources() {
|
||||||
var text = _appDataFolder.ReadFile(GetSourcesPath());
|
var text = _appDataFolder.ReadFile(GetSourcesPath());
|
||||||
if (string.IsNullOrEmpty(text))
|
if (string.IsNullOrEmpty(text))
|
||||||
return Enumerable.Empty<PackageSource>();
|
return Enumerable.Empty<PackagingSource>();
|
||||||
|
|
||||||
var textReader = new StringReader(_appDataFolder.ReadFile(GetSourcesPath()));
|
var textReader = new StringReader(_appDataFolder.ReadFile(GetSourcesPath()));
|
||||||
return (IEnumerable<PackageSource>)_sourceSerializer.Deserialize(textReader);
|
return (IEnumerable<PackagingSource>)_sourceSerializer.Deserialize(textReader);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SaveSources(IEnumerable<PackageSource> sources) {
|
void SaveSources(IEnumerable<PackagingSource> sources) {
|
||||||
var textWriter = new StringWriter();
|
var textWriter = new StringWriter();
|
||||||
_sourceSerializer.Serialize(textWriter, sources.ToList());
|
_sourceSerializer.Serialize(textWriter, sources.ToList());
|
||||||
|
|
||||||
_appDataFolder.CreateFile(GetSourcesPath(), textWriter.ToString());
|
_appDataFolder.CreateFile(GetSourcesPath(), textWriter.ToString());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void AddSource(PackageSource source) {
|
public void AddSource(PackagingSource source) {
|
||||||
UpdateSource(source);
|
UpdateSource(source);
|
||||||
SaveSources(GetSources().Concat(new[] { source }));
|
SaveSources(GetSources().Concat(new[] { source }));
|
||||||
}
|
}
|
||||||
@@ -55,7 +55,7 @@ namespace Orchard.Packaging {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void UpdateSource(PackageSource source) {
|
private void UpdateSource(PackagingSource source) {
|
||||||
var feed = XDocument.Load(source.FeedUrl, LoadOptions.PreserveWhitespace);
|
var feed = XDocument.Load(source.FeedUrl, LoadOptions.PreserveWhitespace);
|
||||||
_appDataFolder.CreateFile(GetFeedCachePath(source), feed.ToString(SaveOptions.DisableFormatting));
|
_appDataFolder.CreateFile(GetFeedCachePath(source), feed.ToString(SaveOptions.DisableFormatting));
|
||||||
}
|
}
|
||||||
@@ -78,7 +78,7 @@ namespace Orchard.Packaging {
|
|||||||
return formatter.Feed;
|
return formatter.Feed;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IEnumerable<PackageEntry> GetModuleList() {
|
public IEnumerable<PackagingEntry> GetModuleList() {
|
||||||
var packageInfos = GetSources()
|
var packageInfos = GetSources()
|
||||||
.SelectMany(
|
.SelectMany(
|
||||||
source =>
|
source =>
|
||||||
@@ -86,7 +86,7 @@ namespace Orchard.Packaging {
|
|||||||
feed =>
|
feed =>
|
||||||
feed.Items.SelectMany(
|
feed.Items.SelectMany(
|
||||||
item =>
|
item =>
|
||||||
Unit(new PackageEntry {
|
Unit(new PackagingEntry {
|
||||||
Source = source,
|
Source = source,
|
||||||
SyndicationFeed = feed,
|
SyndicationFeed = feed,
|
||||||
SyndicationItem = item,
|
SyndicationItem = item,
|
Reference in New Issue
Block a user