public String getNuxeoId() { return pkg.getId(); }
protected DownloadablePackage getPkgInList(List<DownloadablePackage> pkgs, String pkgId) { for (DownloadablePackage pkg : pkgs) { if (pkgId.equals(pkg.getId())) { return pkg; } } return null; }
/** * @deprecated Since 1.4.25. Unused. */ @Deprecated protected Map<String, DownloadablePackage> getCachedPackageList() { if (cachedPackageList == null) { cachedPackageList = new HashMap<>(); } for (DownloadablePackage pkg : listPackages()) { cachedPackageList.put(pkg.getId(), pkg); } return cachedPackageList; }
@Override public List<DownloadablePackage> listRemoteAssociatedStudioPackages() { List<DownloadablePackage> result = new ArrayList<>(); List<String> pkgIds = new ArrayList<>(); for (PackageSource source : remoteSources) { List<DownloadablePackage> pkgs = source.listStudioPackages(); for (DownloadablePackage pkg : pkgs) { if (!pkgIds.contains(pkg.getId())) { pkgIds.add(pkg.getId()); result.add(pkg); } } } return result; }
@Override public List<DownloadablePackage> listRemoteOrLocalPackages(PackageType pkgType, String targetPlatform) { List<DownloadablePackage> result = new ArrayList<>(); List<DownloadablePackage> all = listPackages(pkgType, targetPlatform); List<DownloadablePackage> remotes = listRemotePackages(pkgType, targetPlatform); // Return only packages which are available on remote sources for (DownloadablePackage pkg : all) { for (DownloadablePackage remote : remotes) { if (remote.getId().equals(pkg.getId())) { result.add(pkg); break; } } } return result; }
/** * @since 1.4 * @return a Map of all packages from given sources, optionally filtered on type and/or target platform if not null */ protected Map<String, DownloadablePackage> getAllPackagesByID(List<PackageSource> sources, PackageType type, String targetPlatform) { Map<String, DownloadablePackage> packagesById = new HashMap<>(); for (PackageSource source : sources) { List<DownloadablePackage> packages = source.listPackages(type, targetPlatform); for (DownloadablePackage pkg : packages) { packagesById.put(pkg.getId(), pkg); } } return packagesById; }
@Override public List<DownloadablePackage> listLocalPackages(PackageType type) { List<DownloadablePackage> result = new ArrayList<>(); List<String> pkgIds = new ArrayList<>(); for (PackageSource source : localSources) { List<DownloadablePackage> pkgs = source.listPackages(type); for (DownloadablePackage pkg : pkgs) { if (!pkgIds.contains(pkg.getId())) { pkgIds.add(pkg.getId()); result.add(pkg); } } } Collections.sort(result, new PackageComparator()); return result; }
@Override public List<DownloadablePackage> listAllStudioRemoteOrLocalPackages() { List<DownloadablePackage> remote = listRemoteAssociatedStudioPackages(); List<DownloadablePackage> local = listLocalPackages(PackageType.STUDIO); List<DownloadablePackage> result = new ArrayList<>(); result.addAll(local); REMOTE: for (DownloadablePackage rpkg : remote) { for (DownloadablePackage lpkg : local) { if (lpkg.getId().equals(rpkg.getId())) { continue REMOTE; } } result.add(rpkg); } Collections.sort(result, new PackageComparator()); return result; }
/** * Installs a list of packages and uninstalls the rest (no dependency check) * * @since 6.0 */ public boolean pkgSet(List<String> pkgList, boolean ignoreMissing) { boolean cmdOK = true; cmdOK = cmdOK && pkgInstall(pkgList, ignoreMissing); List<DownloadablePackage> installedPkgs = getPackageManager().listInstalledPackages(); List<String> pkgsToUninstall = new ArrayList<>(); for (DownloadablePackage pkg : installedPkgs) { if ((!pkgList.contains(pkg.getName())) && (!pkgList.contains(pkg.getId()))) { pkgsToUninstall.add(pkg.getId()); } } if (pkgsToUninstall.size() != 0) { cmdOK = cmdOK && pkgUninstall(pkgsToUninstall); } return cmdOK; }
public String confirm() { initMinimalContext(); webActions.setCurrentTabId(AdminViewManager.ADMIN_ACTION_CATEGORY, "ConnectApps", "ConnectAppsRemote"); adminViews.addExternalPackageDownloadRequest(pkg.getId()); return AdminViewManager.VIEW_ADMIN; }
/** * @since 1.4.18 */ public DownloadablePackage getPackageByID(String packageId) { for (PackageListCacheEntry entry : cache.values()) { for (PackageCacheEntry pkgEntry : entry.getPackageCacheEntries()) { if (packageId.equals(pkgEntry.getPackage().getId())) { if (pkgEntry.isExpired(cache_duration)) { return null; } return pkgEntry.getPackage(); } } } return null; }
public String confirm() { initMinimalContext(); webActions.setCurrentTabId(AdminViewManager.ADMIN_ACTION_CATEGORY, "ConnectApps", "ConnectAppsRemote"); adminViews.addExternalPackageDownloadRequest(pkg.getId()); return AdminViewManager.VIEW_ADMIN; }
protected int computeAvailableUpdateCount() { if (ConnectStatusHolder.instance().getStatus().isConnectServerUnreachable()) { return 0; } PackageManager pm = Framework.getLocalService(PackageManager.class); String targetPlatform = PlatformVersionHelper.getPlatformFilter(); List<DownloadablePackage> pkgs = pm.listUpdatePackages(PackageType.HOT_FIX, targetPlatform); List<DownloadablePackage> localHotFixes = pm.listLocalPackages(PackageType.HOT_FIX); List<DownloadablePackage> applicablePkgs = new ArrayList<>(); for (DownloadablePackage pkg : pkgs) { if (TargetPlatformFilterHelper.isCompatibleWithTargetPlatform(pkg, targetPlatform)) { boolean isInstalled = false; for (DownloadablePackage localPkg : localHotFixes) { if (localPkg.getId().equals(pkg.getId())) { isInstalled = true; break; } } if (!isInstalled) { applicablePkgs.add(pkg); } } } return applicablePkgs.size(); }
protected int computeAvailableUpdateCount() { if (ConnectStatusHolder.instance().getStatus().isConnectServerUnreachable()) { return 0; } PackageManager pm = Framework.getService(PackageManager.class); String targetPlatform = PlatformVersionHelper.getPlatformFilter(); List<DownloadablePackage> pkgs = pm.listUpdatePackages(PackageType.HOT_FIX, targetPlatform); List<DownloadablePackage> localHotFixes = pm.listLocalPackages(PackageType.HOT_FIX); List<DownloadablePackage> applicablePkgs = new ArrayList<>(); for (DownloadablePackage pkg : pkgs) { if (TargetPlatformFilterHelper.isCompatibleWithTargetPlatform(pkg, targetPlatform)) { boolean isInstalled = false; for (DownloadablePackage localPkg : localHotFixes) { if (localPkg.getId().equals(pkg.getId())) { isInstalled = true; break; } } if (!isInstalled) { applicablePkgs.add(pkg); } } } return applicablePkgs.size(); }
protected FileTime getLastUpdateDate() { if (lastUpdate == null) { DownloadablePackage snapshotPkg = getStudioProjectSnapshot(); if (snapshotPkg != null) { PackageUpdateService pus = Framework.getLocalService(PackageUpdateService.class); try { LocalPackage pkg = pus.getPackage(snapshotPkg.getId()); if (pkg != null) { lastUpdate = pus.getInstallDate(pkg.getId()); } } catch (PackageException e) { log.error(e); } } } return lastUpdate; }
protected FileTime getLastUpdateDate() { if (lastUpdate == null) { DownloadablePackage snapshotPkg = getStudioProjectSnapshot(); if (snapshotPkg != null) { PackageUpdateService pus = Framework.getService(PackageUpdateService.class); try { LocalPackage pkg = pus.getPackage(snapshotPkg.getId()); if (pkg != null) { lastUpdate = pus.getInstallDate(pkg.getId()); } } catch (PackageException e) { log.error(e); } } } return lastUpdate; }
try { PackageUpdateService pus = Framework.getService(PackageUpdateService.class); pkg = pus.getPackage(snapshotPkg.getId()); } catch (PackageException e) { log.error(e);
public void installStudioSnapshot() { if (isStudioSnapshopUpdateInProgress) { return; } PackageManager pm = Framework.getService(PackageManager.class); // TODO NXP-16228: should directly request the SNAPSHOT package (if only we knew its name!) List<DownloadablePackage> pkgs = pm.listRemoteAssociatedStudioPackages(); DownloadablePackage snapshotPkg = StudioSnapshotHelper.getSnapshot(pkgs); studioSnapshotUpdateError = null; resetStudioSnapshotValidationStatus(); if (snapshotPkg != null) { isStudioSnapshopUpdateInProgress = true; try { StudioAutoInstaller studioAutoInstaller = new StudioAutoInstaller(pm, snapshotPkg.getId(), shouldValidateStudioSnapshot()); studioAutoInstaller.run(); } finally { isStudioSnapshopUpdateInProgress = false; } } else { studioSnapshotUpdateError = translate("label.studio.update.error.noSnapshotPackageFound"); } }
public void installStudioSnapshot() { if (isStudioSnapshopUpdateInProgress) { return; } PackageManager pm = Framework.getLocalService(PackageManager.class); // TODO NXP-16228: should directly request the SNAPSHOT package (if only we knew its name!) List<DownloadablePackage> pkgs = pm.listRemoteAssociatedStudioPackages(); DownloadablePackage snapshotPkg = StudioSnapshotHelper.getSnapshot(pkgs); studioSnapshotUpdateError = null; resetStudioSnapshotValidationStatus(); if (snapshotPkg != null) { isStudioSnapshopUpdateInProgress = true; try { StudioAutoInstaller studioAutoInstaller = new StudioAutoInstaller(pm, snapshotPkg.getId(), shouldValidateStudioSnapshot()); studioAutoInstaller.run(); } finally { isStudioSnapshopUpdateInProgress = false; } } else { studioSnapshotUpdateError = translate("label.studio.update.error.noSnapshotPackageFound"); } }