All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.atlassian.maven.plugins.jgitflow.extension.HotfixFinishPluginExtension Maven / Gradle / Ivy

The newest version!
package com.atlassian.maven.plugins.jgitflow.extension;

import com.atlassian.jgitflow.core.extension.HotfixFinishExtension;
import com.atlassian.maven.jgitflow.api.MavenJGitFlowExtension;
import com.atlassian.maven.plugins.jgitflow.extension.command.UpdateCurrentBranchWithHotfixVersionsCommand;
import com.atlassian.maven.plugins.jgitflow.extension.command.UpdateDevelopWithPreviousVersionsCommand;
import com.atlassian.maven.plugins.jgitflow.extension.command.UpdateReleaseWithPreviousVersionsCommand;

import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Requirement;

@Component(role = HotfixFinishPluginExtension.class)
public class HotfixFinishPluginExtension extends ProductionBranchMergingPluginExtension implements HotfixFinishExtension
{
    @Requirement
    private UpdateCurrentBranchWithHotfixVersionsCommand updateCurrentBranchWithHotfixVersionsCommand;

    @Requirement
    private UpdateDevelopWithPreviousVersionsCommand updateDevelopWithPreviousVersionsCommand;

    @Requirement
    private UpdateReleaseWithPreviousVersionsCommand updateReleaseWithPreviousVersionsCommand;

    @Override
    public void init(MavenJGitFlowExtension externalExtension)
    {
        super.init(externalExtension);

        //we need to avoid merge conflicts from master to develop with hotfix versions

        //update develop to hotfix versions
        addBeforeDevelopMergeCommands(updateCurrentBranchWithHotfixVersionsCommand);

        //update develop to previous development versions
        addAfterDevelopMergeCommands(updateDevelopWithPreviousVersionsCommand);

        //update release to hotfix versions
        addBeforeReleaseMergeCommands(updateCurrentBranchWithHotfixVersionsCommand);

        //update release to previous development versions
        addAfterReleaseMergeCommands(updateReleaseWithPreviousVersionsCommand);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy