Example usage for org.apache.maven.artifact.versioning DefaultArtifactVersion compareTo

List of usage examples for org.apache.maven.artifact.versioning DefaultArtifactVersion compareTo

Introduction

In this page you can find the example usage for org.apache.maven.artifact.versioning DefaultArtifactVersion compareTo.

Prototype

public int compareTo(ArtifactVersion otherVersion) 

Source Link

Usage

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;
}