}\r
\r
/// <summary>\r
+ /// レポジトリで提供されるソフトリストのフォーマットを返す\r
+ /// </summary>\r
+ public enum RepositoryType : uint\r
+ {\r
+ /// <summary>\r
+ /// AppliStation Native XML Format Version 1.0\r
+ /// </summary>\r
+ [XmlEnum(Name="ASNATIVEv1.0")]\r
+ APPLISTATION_NATIVE_XML_1_0 = 0,\r
+ }\r
+ \r
+ /// <summary>\r
/// パッケージリストを提供するレポジトリの参照情報を格納するクラス\r
/// </summary>\r
public class RepositoryInfo\r
public string Name;\r
\r
/// <summary>\r
+ /// ソフトリストの形式\r
+ /// </summary>\r
+ [XmlAttribute]\r
+ public RepositoryType Type;\r
+ \r
+ /// <summary>\r
/// ソフトリストの取得先URL\r
/// </summary>\r
public LocationEntry Url;\r
try {\r
Downloader.Download(repo.Url.Href, tmpfileName);\r
\r
- PackageList<Package> pkgList = NaGet.Utils.GetDeserializedObject<PackageList<Package>>(tmpfileName);\r
- pkgList.FixPackageListName(); // PackageListNameとの紐付けを行う\r
- \r
- // RepositoryReferenceの名前を読み込む // TODO RepositoryReferenceの名前を読み込む処理はここでいいのか?\r
- repo.Name = (string.IsNullOrEmpty(pkgList.Name))? repo.Name : pkgList.Name;\r
- \r
- avaiablePackageList.AddPackages(pkgList.Packages);\r
+ if (repo.Type == RepositoryType.APPLISTATION_NATIVE_XML_1_0) {\r
+ PackageList<Package> pkgList = NaGet.Utils.GetDeserializedObject<PackageList<Package>>(tmpfileName);\r
+ pkgList.FixPackageListName(); // PackageListNameとの紐付けを行う\r
+ \r
+ // RepositoryReferenceの名前を読み込む // TODO RepositoryReferenceの名前を読み込む処理はここでいいのか?\r
+ repo.Name = (string.IsNullOrEmpty(pkgList.Name))? repo.Name : pkgList.Name;\r
+ \r
+ avaiablePackageList.AddPackages(pkgList.Packages);\r
+ } else {\r
+ RaiseTaskSetEvent(NaGetTaskSetEventType.WARNING, string.Format("Repository {0} is illegal type.", repo.Name ?? repo.Url.Href));\r
+ }\r
} finally {\r
if (File.Exists(tmpfileName)) {\r
File.Delete(tmpfileName);\r
<?xml version="1.0"?>\r
<RepositoriesList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">\r
<Repositories>\r
- <RepositoryInfo Name="AppliStation Network" Enabled="true">\r
+ <RepositoryInfo Name="AppliStation Network" Type="ASNATIVEv1.0" Enabled="true">\r
<Url Href="http://applistation.com/AppliStationNetwork/softlist.xml" />\r
</RepositoryInfo>\r
</Repositories>\r