public void execute()

in maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java [140:210]


    public void execute() throws MojoExecutionException {
        super.execute();

        SimpleDateFormat localFormat = new SimpleDateFormat(userDateFormat);

        try {
            ScmRepository repository = getScmRepository();

            ScmProvider provider = getScmManager().getProviderByRepository(repository);

            ChangeLogScmRequest request = new ChangeLogScmRequest(repository, getFileSet());

            request.setDatePattern(dateFormat);

            if (startDate != null && !startDate.isEmpty()) {
                request.setStartDate(parseDate(localFormat, startDate));
            }

            if (endDate != null && !endDate.isEmpty()) {
                request.setEndDate(parseDate(localFormat, endDate));
            }

            if (startScmVersion != null && !startScmVersion.isEmpty()) {
                ScmVersion startRev = getScmVersion(
                        (startScmVersionType == null || startScmVersionType.isEmpty())
                                ? VERSION_TYPE_REVISION
                                : startScmVersionType,
                        startScmVersion);
                request.setStartRevision(startRev);
            }

            if (endScmVersion != null && !endScmVersion.isEmpty()) {
                ScmVersion endRev = getScmVersion(
                        (endScmVersionType == null || endScmVersionType.isEmpty())
                                ? VERSION_TYPE_REVISION
                                : endScmVersionType,
                        endScmVersion);
                request.setEndRevision(endRev);
            }

            request.setLimit(limit);

            if (numDays != null) {
                request.setNumDays(numDays);
            }

            if (scmVersion != null && !scmVersion.isEmpty()) {
                ScmVersion rev = getScmVersion(
                        (scmVersionType == null || scmVersionType.isEmpty()) ? VERSION_TYPE_REVISION : scmVersionType,
                        scmVersion);
                request.setRevision(rev);
            }

            if (scmBranch != null && !scmBranch.isEmpty()) {
                request.setScmBranch(new ScmBranch(scmBranch));
            }

            ChangeLogScmResult result = provider.changeLog(request);

            checkResult(result);

            ChangeLogSet changeLogSet = result.getChangeLog();

            for (ChangeSet changeSet : changeLogSet.getChangeSets()) {
                getLog().info(changeSet.toString());
            }

        } catch (IOException | ScmException e) {
            throw new MojoExecutionException("Cannot run changelog command : ", e);
        }
    }