protected LocalPackage validateInstall(ValidationStatus status) throws PackageException { LocalPackage oldpkg = service.getActivePackage(pkg.getName()); if (oldpkg != null) { if (oldpkg.getPackageState() == PackageState.INSTALLING) { status.addWarning("A package with the same name: " + oldpkg.getId() + " is being installing. Try again later."); } else { status.addWarning("The package " + oldpkg.getId() + " will be uninstalled!"); } return oldpkg; } return null; }
/** * @return true if the current version is an upgrade comparing to the given version * @since 1.4.19 */ public boolean isUpgradeFor(Version version) { return isUpgradeFor(version, true); }
/** * @since 5.6 */ public boolean canCancel(Package pkg) { return PackageState.DOWNLOADING == pkg.getPackageState(); }
/** * @since 5.8 */ public boolean canUpgrade(Package pkg) { return pkg.getPackageState().isInstalled() && pkg.getVersion().isSnapshot() && !InstallAfterRestart.isMarkedForInstallAfterRestart(pkg.getName()); }
@Override public int compare(Package arg0, Package arg1) { if (!arg0.getType().equals(arg1.getType())) { return arg0.getType().compareTo(arg1.getType()); } if (!arg0.getName().equals(arg1.getName())) { return arg0.getName().compareToIgnoreCase(arg1.getName()); } return arg0.getVersion().compareTo(arg1.getVersion()); } }
private boolean matchDependency(PackageDependency pkgDep, Package pkg) { boolean match = pkgDep.getName().equals(pkg.getName()) && pkgDep.getVersionRange().matchVersion(pkg.getVersion()); if (!match && pkg.getProvides() != null) { // Look at provides for (PackageDependency provide : pkg.getProvides()) { if (pkgDep.getName().equals(provide.getName()) && pkgDep.getVersionRange().matchVersionRange(provide.getVersionRange())) { match = true; break; } } } return match; }
protected void addIfSNAPSHOT(List<String> installedOrRequiredSNAPSHOTPackages, PackageDependency pd) { Version minVersion = pd.getVersionRange().getMinVersion(); Version maxVersion = pd.getVersionRange().getMaxVersion(); if (minVersion != null && minVersion.isSnapshot() || maxVersion != null && maxVersion.isSnapshot()) { installedOrRequiredSNAPSHOTPackages.add(pd.getName()); } }
@Override public String getId() { return localPackage.getId(); }
@Override public Object deserialize(Context arg0, String arg1) { return new Version(arg1); } });
@Override public String serialize(Context arg0, Object arg1) { return ((PackageType) arg1).getValue(); }
@Override protected void doValidate(Task task, ValidationStatus status) throws PackageException { // allow null version for Studio snapshot jar if (key == null) { status.addError("Cannot execute command in installer." + " Invalid rollback syntax: key was not specified."); } }
@Override public void setState(PackageState state) { localPackage.setState(state); }
@Override protected void taskDone() throws PackageException { service.setPackageState(pkg, PackageState.STARTED); }
@Override public String getLicenseType() { return localPackage.getLicenseType(); }
@Override public PackageDependency[] getOptionalDependencies() { return localPackage.getOptionalDependencies(); }
@Override public ProductionState getProductionState() { return localPackage.getProductionState(); }
@Override public NuxeoValidationState getValidationState() { return localPackage.getValidationState(); }
@Override public boolean isSupported() { return localPackage.isSupported(); }
@Override public String toString() { return getValue(); }
/** * @since 5.8 */ public boolean canUpgrade(Package pkg) { return pkg.getPackageState().isInstalled() && pkg.getVersion().isSnapshot() && !InstallAfterRestart.isMarkedForInstallAfterRestart(pkg.getName()); }