void OnResponseV5(EditorHttpResponse response, Action <List <PackageRepository>, List <string> > onResponse) { if (response.Type == ResponseType.SUCCEED) { var responseJson = JsonUtility.FromJson <QFrameworkServerResultFormat <ListPackageResponseResult> >(response.Text); if (responseJson.code == 1) { var listPackageResponseResult = responseJson.data; var packageTypeConfigModel = PackageKitArchitectureConfig.GetModel <IPackageTypeConfigModel>(); foreach (var packageRepository in listPackageResponseResult.repositories) { packageRepository.type = packageTypeConfigModel.GetFullTypeName(packageRepository.type); } new PackageInfosRequestCache() { PackageRepositories = listPackageResponseResult.repositories }.Save(); onResponse(listPackageResponseResult.repositories, listPackageResponseResult.categories); } } else { onResponse(null, null); } }
public PackageRepositoryView(PackageRepository packageRepository) { new SpaceView(2).AddTo(this); new LabelView(packageRepository.name).FontBold().Width(200).AddTo(this); new LabelView(packageRepository.latestVersion).TextMiddleCenter().Width(80).AddTo(this); var installedPackage = PackageKitArchitectureConfig.GetModel <IInstalledPackageVersionsConfigModel>() .GetByName(packageRepository.name); new LabelView(installedPackage != null ? installedPackage.Version : " ").TextMiddleCenter().Width(100) .AddTo(this); new LabelView(packageRepository.accessRight).TextMiddleLeft().Width(50).AddTo(this); if (installedPackage == null) { new ButtonView(LocaleText.Import).Width(90).AddTo(this) .OnClick.AddListener(() => { PackageKitArchitectureConfig.SendCommand(new ImportPackageCommand(packageRepository)); }); } else if (packageRepository.VersionNumber > installedPackage.VersionNumber) { new ButtonView(LocaleText.Update).Width(90).AddTo(this) .OnClick.AddListener(() => { PackageKitArchitectureConfig.SendCommand(new UpdatePackageCommand(packageRepository)); }); } else if (packageRepository.VersionNumber == installedPackage.VersionNumber) { new ButtonView(LocaleText.Reimport).Width(90).AddTo(this) .OnClick.AddListener(() => { PackageKitArchitectureConfig.SendCommand(new ReimportPackageCommand(packageRepository)); }); } else if (packageRepository.VersionNumber < installedPackage.VersionNumber) { new SpaceView(94).AddTo(this); } new ButtonView(LocaleText.ReleaseNotes) .Width(100) .AddTo(this) .OnClick.AddListener(() => { PackageKitArchitectureConfig.SendCommand(new OpenDetailCommand(packageRepository)); }); new LabelView(packageRepository.author) .TextMiddleLeft() .FontBold().Width(100) .AddTo(this); }