List of usage examples for org.apache.maven.artifact.versioning DefaultArtifactVersion compareTo
public int compareTo(ArtifactVersion otherVersion)
From source file:com.anritsu.mcrepositorymanager.dbcontroller.MainController.java
public DBMcAvailabilities getLatestVersion(DBMcAvailabilities dbmca) { // Get all availabilities from DB List<DBMcAvailabilities> availabilities = dbMcAvailabilitiesJpaController.findDBMcAvailabilitiesEntities(); // Add to availabilitiesMap only the ones which match the mcversion, package name and availability Map<String, DBMcAvailabilities> availabilitiesMap = new HashMap<String, DBMcAvailabilities>(); for (DBMcAvailabilities dbmcav : availabilities) { if ((dbmcav.getReleaseId().getComponentName().equalsIgnoreCase(dbmca.getReleaseId().getComponentName())) && (dbmcav.getMcVersion().equalsIgnoreCase(dbmca.getMcVersion())) && (dbmcav.getAvailability().equalsIgnoreCase(dbmca.getAvailability()))) { availabilitiesMap.put(dbmcav.getReleaseId().getComponentVersion(), dbmcav); }/*ww w.j av a 2s . com*/ } // Get latest version for (String key : availabilitiesMap.keySet()) { DefaultArtifactVersion keyV = new DefaultArtifactVersion(key.split("-")[0]); DefaultArtifactVersion resultV = new DefaultArtifactVersion( dbmca.getReleaseId().getComponentVersion().split("-")[0]); if (keyV.compareTo(resultV) > 0) { dbmca = availabilitiesMap.get(key); } } return dbmca; }
From source file:com.anritsu.mcrepositorymanager.packageinfoparser.DBParser.java
@Override public HashSet<McPackage> getPackageList(Filter filter) { this.filter = filter; HashSet<McPackage> mcPackages = new HashSet<>(); HashSet<McPackage> mcPackagesDependencies = new HashSet<>(); ApplyFilter applyFilter = new ApplyFilter(filter); HashSet<DBMcReleases> mcReleases = MainController.getInstance().getPackages(mcVersion); if (!mcReleases.isEmpty()) { for (DBMcReleases dbmcr : mcReleases) { McPackage mcp = getMcPackageFromDBMcReleases(dbmcr); if ((applyFilter.isMcPackageMatchRecommendedLatestFilter(mcp) && applyFilter.isMcPackageMatchAvailabilityFilter(mcp) && applyFilter.isMcPackageMatchCustomerFilter(mcp) && applyFilter.isMcPackageMatchMcComponentFilter(mcp) && applyFilter.isMcPackageMatchActivityFilter(mcp) && applyFilter.isMcPackageMatchQ7admOutput(mcp))) { mcp.setMatchFilter(true); try { DefaultArtifactVersion packageVersion = new DefaultArtifactVersion( mcp.getPackageVersion().split("-")[0]); DefaultArtifactVersion pacakgeQ7admOutpuVersion = new DefaultArtifactVersion( mcp.getQ7admOutputVersion().split("-")[0]); if (mcp.isMatchFilter() && packageVersion.compareTo(pacakgeQ7admOutpuVersion) > 0) { mcp.setMcPackageSuitableForDownload(true); } else { mcp.setMcPackageSuitableForDownload(false); mcp.setAddToRepository(false); }//from ww w. j a va 2s.c o m } catch (Exception exp) { mcp.setMcPackageSuitableForDownload(true); } mcPackages.add(mcp); LOGGER.log(Level.INFO, "Adding: {0}-{1}, {2}, {3}, {4}. list.size={5}", new Object[] { mcp.getName(), mcp.getPackageVersion(), mcp.getMcVersion(), mcp.getAvailability(), mcp.getCustomerList(), mcPackages.size() }); } } } //Applying recommended filter HashSet<McPackage> mcPackagesFiltered = new HashSet<>(); switch (filter.getRecommendedFilter()) { case "recommended": // Adding GCA ArrayList<String> gcas = new ArrayList<String>(); for (McPackage p : mcPackages) { if (p.getAvailability().equalsIgnoreCase("GCA")) { mcPackagesFiltered.add(p); gcas.add(p.getName()); } } // Adding FCA if GCA is not present for (McPackage p : mcPackages) { if (!gcas.contains(p.getName())) { mcPackagesFiltered.add(p); } } // Adding other availabilities if selected for (McPackage p : mcPackages) { if (!p.getAvailability().equalsIgnoreCase("FCA") && !p.getAvailability().equalsIgnoreCase("GCA")) { mcPackagesFiltered.add(p); } } break; case "latest validated": // Adding FCA ArrayList<String> fcas = new ArrayList<String>(); for (McPackage p : mcPackages) { if (p.getAvailability().equalsIgnoreCase("FCA")) { mcPackagesFiltered.add(p); fcas.add(p.getName()); } } // Adding FCA if GCA is not present for (McPackage p : mcPackages) { if (!fcas.contains(p.getName())) { mcPackagesFiltered.add(p); } } // Adding other availabilities if selected for (McPackage p : mcPackages) { if (!p.getAvailability().equalsIgnoreCase("FCA") && !p.getAvailability().equalsIgnoreCase("GCA")) { mcPackagesFiltered.add(p); } } break; case "latest": mcPackagesFiltered = mcPackages; break; } // Solving dependencies for packages isSuitableForDownload HashSet<McPackage> mcPackagesListToSolveDep = new HashSet<>(); for (McPackage p : mcPackagesFiltered) { if (p.isMcPackageSuitableForDownload()) { mcPackagesListToSolveDep.add(p); } } // Solving dependencies mcPackagesDependencies = solveDependencies(mcPackagesListToSolveDep); LOGGER.log(Level.INFO, "mcPackages match filter size: {0}", mcPackages.size()); LOGGER.log(Level.INFO, "mcPackagesDependencies size: {0}", mcPackagesDependencies.size()); mcPackagesFiltered.addAll(mcPackagesDependencies); LOGGER.log(Level.INFO, "mcPackages size after merge with mcPackagesDependencies: {0}", mcPackagesDependencies.size()); return mcPackagesFiltered; }
From source file:com.anritsu.mcrepositorymanager.packageinfoparser.DBParser.java
private RecommendedMcPackage getRecommendedMcPackageFromDBMcReleases(DBMcReleases dbmcr) { System.out.println("Processing " + dbmcr.getComponentName()); RecommendedMcPackage rmcp = new RecommendedMcPackage(); rmcp.setMcVersion(mcVersion);/*from w w w. j a v a2 s . c o m*/ for (DBMcAvailabilities dbmca : dbmcr.getDBMcAvailabilitiesCollection()) { if (dbmca.getMcVersion().equalsIgnoreCase(mcVersion)) { if (!rmcp.isShowInTable()) { boolean showInTable = false; try { showInTable = dbmca.getIsRecommended(); } catch (Exception exp) { //exp.printStackTrace(); showInTable = true; } rmcp.setShowInTable(showInTable); } } if (dbmca.getMcVersion().equalsIgnoreCase(mcVersion)) { rmcp.setTier(dbmcr.getComponentTier()); rmcp.setGroup(dbmcr.getComponentGroup()); rmcp.setPackageName(dbmcr.getComponentName()); rmcp.setAvailability(dbmca.getAvailability()); ArrayList<McPackage> versions = new ArrayList<>(); for (DBMcAvailabilities dbmcav : MainController.getInstance().getmcPackageVersions( rmcp.getPackageName(), rmcp.getMcVersion(), dbmca.getAvailability())) { versions.add(getMcPackageFromDBMcReleases(dbmcav.getReleaseId())); } System.out.println("###################VERSIONS: " + versions.size()); rmcp.setPackageVersions(versions); McPackage recommendedVersion = new McPackage(); if (MainController.getInstance().getRecommendedVersion(dbmca) != null) { recommendedVersion = getMcPackageFromDBMcReleases( MainController.getInstance().getRecommendedVersion(dbmca).getReleaseId()); rmcp.setRecommendedVersion(recommendedVersion); for (McPackage p : versions) { System.out.println(p.getPackageVersion()); System.out.println(rmcp.getRecommendedVersion().getPackageVersion()); DefaultArtifactVersion v = new DefaultArtifactVersion(p.getPackageVersion().split("-")[0]); DefaultArtifactVersion vRecommended = new DefaultArtifactVersion( rmcp.getRecommendedVersion().getPackageVersion().split("-")[0]); if (v.compareTo(vRecommended) > 0) { rmcp.setRecommendedVersionCandidate(true); } } } } } LOGGER.log(Level.INFO, "{0}-{1} : showInTable:{2}", new Object[] { rmcp.getPackageName(), rmcp.getAvailability(), rmcp.isShowInTable() }); return rmcp; }
From source file:com.anritsu.mcrepositorymanager.packageinfoparser.RSSParser.java
@Override public HashSet<McPackage> getPackageList(Filter filter) { HashSet<McPackage> filteredPackageList = new HashSet<>(); ApplyFilter applyFilter = new ApplyFilter(filter); for (McPackage p : packageList) { if ((applyFilter.isMcPackageMatchAvailabilityFilter(p) && applyFilter.isMcPackageMatchCustomerFilter(p) && applyFilter.isMcPackageMatchMcComponentFilter(p) && applyFilter.isMcPackageMatchQ7admOutput(p))) { try { DefaultArtifactVersion packageVersion = new DefaultArtifactVersion( p.getPackageVersion().split("-")[0]); DefaultArtifactVersion pacakgeQ7admOutpuVersion = new DefaultArtifactVersion( p.getQ7admOutputVersion().split("-")[0]); if (packageVersion.compareTo(pacakgeQ7admOutpuVersion) > 0) { p.setMcPackageSuitableForDownload(true); } else { p.setMcPackageSuitableForDownload(false); }//from www. j ava2 s .c om } catch (Exception exp) { p.setMcPackageSuitableForDownload(true); } filteredPackageList.add(p); } } return filteredPackageList; }
From source file:com.cloudera.whirr.cm.server.impl.CmServerImpl.java
License:Apache License
private void provisionParcels(final CmServerCluster cluster) throws InterruptedException, IOException { apiResourceRootV3.getClouderaManagerResource().updateConfig( new ApiConfigList(Arrays.asList(new ApiConfig[] { new ApiConfig("PARCEL_UPDATE_FREQ", "1") }))); final Set<String> repositoriesRequired = new HashSet<String>(); for (CmServerServiceType type : cluster.getServiceTypes(versionApi, versionCdh)) { repositoriesRequired.add(type.getRepository().toString(CDH_REPO_PREFIX + versionCdh)); }//from ww w .java 2 s. c om final List<String> repositoriesRequiredOrdered = new ArrayList<String>(); for (String repository : repositoriesRequired) { if (repository.equals(CDH_REPO_PREFIX)) { repositoriesRequiredOrdered.add(0, repository); } else { repositoriesRequiredOrdered.add(repository); } } execute("WaitForParcelsAvailability", new Callback() { @Override public boolean poll() { for (ApiParcel parcel : apiResourceRootV3.getClustersResource().getParcelsResource(getName(cluster)) .readParcels(DataView.FULL).getParcels()) { try { repositoriesRequired.remove(parcel.getProduct()); } catch (IllegalArgumentException e) { // ignore } } return repositoriesRequired.isEmpty(); } }); apiResourceRootV3.getClouderaManagerResource().updateConfig( new ApiConfigList(Arrays.asList(new ApiConfig[] { new ApiConfig("PARCEL_UPDATE_FREQ", "60") }))); for (String repository : repositoriesRequiredOrdered) { DefaultArtifactVersion parcelVersion = null; for (ApiParcel apiParcel : apiResourceRootV3.getClustersResource().getParcelsResource(getName(cluster)) .readParcels(DataView.FULL).getParcels()) { DefaultArtifactVersion parcelVersionTmp = new DefaultArtifactVersion(apiParcel.getVersion()); if (apiParcel.getProduct().equals(repository)) { if (!apiParcel.getProduct().equals(CDH_REPO_PREFIX) || versionCdh == parcelVersionTmp.getMajorVersion()) { if (parcelVersion == null || parcelVersion.compareTo(parcelVersionTmp) < 0) { parcelVersion = new DefaultArtifactVersion(apiParcel.getVersion()); } } } } final ParcelResource apiParcelResource = apiResourceRootV3.getClustersResource() .getParcelsResource(getName(cluster)).getParcelResource(repository, parcelVersion.toString()); execute(apiParcelResource.startDownloadCommand(), new Callback() { @Override public boolean poll() { return apiParcelResource.readParcel().getStage().equals(CM_PARCEL_STAGE_DOWNLOADED); } }, false); execute(apiParcelResource.startDistributionCommand(), new Callback() { @Override public boolean poll() { return apiParcelResource.readParcel().getStage().equals(CM_PARCEL_STAGE_DISTRIBUTED); } }, false); execute(apiParcelResource.activateCommand(), new Callback() { @Override public boolean poll() { return apiParcelResource.readParcel().getStage().equals(CM_PARCEL_STAGE_ACTIVATED); } }, false); } }
From source file:com.frequentis.maritime.mcsr.service.DesignService.java
License:Open Source License
/** * Get one design by domain specific id (for example, maritime id), only return the latest version. * * @param domainId the domain specific id of the design * @return the entity/*from ww w .j ava 2 s . c o m*/ */ @Transactional(readOnly = true) public Design findLatestVersionByDomainId(String domainId) { log.debug("Request to get Design by domain id {}", domainId); Design design = null; DefaultArtifactVersion latestVersion = new DefaultArtifactVersion("0.0"); try { Iterable<Design> designs = designRepository.findByDomainId(domainId); if (designs.iterator().hasNext()) { Design i = designs.iterator().next(); //Compare version numbers, save the instance if it's a newer version DefaultArtifactVersion iv = new DefaultArtifactVersion(i.getVersion()); if (iv.compareTo(latestVersion) > 0) { design = i; latestVersion = iv; } } } catch (Exception e) { log.debug("Could not find specification for domain id {}", domainId); e.printStackTrace(); } return design; }
From source file:com.frequentis.maritime.mcsr.service.InstanceService.java
License:Open Source License
/** * Get one instance by domain specific id (for example, maritime id), only return the latest version. * * @param domainId the domain specific id of the instance * @param includeNonCompliant include also non-compliant services * @return the entity//from ww w . j a v a2s . c o m */ @Transactional(readOnly = true) public Instance findLatestVersionByDomainId(String domainId, boolean includeNonCompliant) { log.debug("Request to get Instance by domain id {}", domainId); Instance instance = null; DefaultArtifactVersion latestVersion = new DefaultArtifactVersion("0.0"); try { Iterable<Instance> instances; if (includeNonCompliant) { instances = instanceRepository.findByDomainIdEagerRelationshipsWithNonCompliant(domainId); } else { instances = instanceRepository.findByDomainIdEagerRelationships(domainId); } if (instances.iterator().hasNext()) { Instance i = instances.iterator().next(); //Compare version numbers, save the instance if it's a newer version DefaultArtifactVersion iv = new DefaultArtifactVersion(i.getVersion()); if (iv.compareTo(latestVersion) > 0 && i.getStatus().equalsIgnoreCase(Instance.SERVICESTATUS_LIVE)) { instance = i; latestVersion = iv; } } } catch (Exception e) { log.debug("Could not find a live instance for domain id {}", domainId); e.printStackTrace(); } return instance; }
From source file:com.frequentis.maritime.mcsr.service.SpecificationService.java
License:Open Source License
/** * Get one specification by domain specific id (for example, maritime id), only return the latest version. * * @param domainId the domain specific id of the specification * @return the entity//ww w . j av a 2 s . co m */ @Transactional(readOnly = true) public Specification findLatestVersionByDomainId(String domainId) { log.debug("Request to get Specification by domain id {}", domainId); Specification specification = null; DefaultArtifactVersion latestVersion = new DefaultArtifactVersion("0.0"); try { Iterable<Specification> specifications = specificationRepository.findByDomainId(domainId); if (specifications.iterator().hasNext()) { Specification i = specifications.iterator().next(); //Compare version numbers, save the instance if it's a newer version DefaultArtifactVersion iv = new DefaultArtifactVersion(i.getVersion()); if (iv.compareTo(latestVersion) > 0) { specification = i; latestVersion = iv; } } } catch (Exception e) { log.debug("Could not find specification for domain id {}", domainId); e.printStackTrace(); } return specification; }
From source file:com.github.igorpetruk.protobuf.maven.plugin.RunMojo.java
License:Apache License
private int getValidVersionExitCode(String libraryVersionString) throws MojoExecutionException { DefaultArtifactVersion libraryVersion = new DefaultArtifactVersion(libraryVersionString); // Since this version protoc is properly returning 0 on successful run DefaultArtifactVersion newerVersion = new DefaultArtifactVersion("2.5.0"); if (newerVersion.compareTo(libraryVersion) > 0) { return 1; } else {/*from w ww. j a v a 2 s . c o m*/ return 0; } }
From source file:com.nidefawl.Stats.util.UpdaterFile.java
License:Open Source License
public boolean update(boolean autoUpdate) throws Exception { DefaultArtifactVersion remoteVersion = new DefaultArtifactVersion(String.valueOf(this.remoteVersion)); DefaultArtifactVersion localVersion = new DefaultArtifactVersion(this.localVersion); if (localVersion.compareTo(remoteVersion) < 0) { if (autoUpdate) { try { Stats.LogInfo("Newer version of " + localLocation + " found. local: " + localVersion + " remote: " + remoteVersion); Stats.LogInfo("Downloading file : " + remoteLocation); URL url = new URL(remoteLocation); File file = new File(localLocation); file.mkdirs();/*from w w w. j ava 2s .c o m*/ if (file.exists()) { file.delete(); } InputStream inputStream = url.openStream(); OutputStream outputStream = new FileOutputStream(file); saveTo(inputStream, outputStream); inputStream.close(); outputStream.close(); Stats.LogInfo("Download complete. File saved to " + file.getAbsolutePath()); return true; } catch (Exception e) { Stats.LogInfo("Download failed: " + e.getMessage()); e.printStackTrace(); return false; } } else { Stats.LogInfo("There is an update for " + localLocation); return false; } } return false; }