Skip to end of metadata
Go to start of metadata

Antes de desenvolvermos a solução pesquisamos algumas possíveis soluções como:

1-Adicionar a dependência do plugin da api do greenhopper ao projeto como neste link. (NAO FUNCIONA)

<dependency>
	<groupId>com.atlassian.jira.plugins</groupId>
	<artifactId>jira-greenhopper-plugin</artifactId>
	<version>${greenhopper.version}</version>
	<scope>provided</scope>
</dependency>

2-Adicionar esta tag no atlassian-plugin.xml para importar o componente e instanciá-lo num contrutor de uma classe.

<component-import key="greenhopper-service" name="GreenHopper Service" interface="com.pyxis.greenhopper.GreenHopper">      	           	    <description>GreenHopper Service component to access Fix Versions hierarchy data</description>
</component-import>
public Constructor(GreenHopper gh) {
    //gh está ok.
    if (gh != null) {
       System.out.println("GreenhopperService inicializada com sucesso.");
    }

    //Mas "loadGHVersion(project)" aqui não instancia..
    gh.loadGHVersion(project);

}

ou

<component key="greenhopper-bridgeservicelocator" name="GreenHopper BridgeServiceLocator" public="true">
       <interface>com.atlassian.greenhopper.service.BridgeServiceLocator</interface>
</component>

public Constructor(BridgeServiceLocator bridgeService) {
    //BridgeServiceLocator.getInstance() está ok.
    if (bridgeService != null) {
       System.out.println("GreenhopperService inicializada com sucesso.");
       this.bridgeService = bridgeService;

       //Mas ".getInstance().getGHVersionService()" aqui não instancia..
       GHVersionService serviceVersion = this.bridgeService.getInstance().getGHVersionService();

    }
}

ou

ProjectConfiguration configuration = JiraUtil.getGreenHopperService().getConfiguration(project);
Date versionStartDate = configuration.getVersionStartDate(versionJira);


//Mas ".getGreenHopperService()" não instancia..

Eis o que realmente funcionou:

1-Coloque a dependencia da api do greenhopper no seu pom.xml.

<dependency>
   <groupId>greenhopper</groupId>
   <artifactId>jira-greenhopper-plugin</artifactId>
   <version>5.6.2</version>
   <scope>runtime</scope>
</dependency>


Esta(5.6.2) é a última versão no repositório da atlassian.
private IssueManager   issueManager =    ComponentManager.getComponentInstanceOfType(IssueManager.class);

private IssueFieldManager  issueFieldManager =  ComponentManager.getComponentInstanceOfType(IssueFieldManager.class);

MutableIssue mi = issueManager.getIssueObject("issueId"); //issueId ou issuekey

ProjectConfiguration configuration = new ProjectConfiguration(mi.getProjectObject(), issueFieldManager);

List<Version> version = new ArrayList<Version>(mi.getFixVersions());

Version uniqueVersion = version.get(0);

VersionWrapper versionW = new VersionWrapper(uniqueVersion);

System.out.println("end-date: [ "+configuration.getVersionEndDate(uniqueVersion)+" \]"); //util.Date

System.out.println("relese-date: [ "+versionW.getReleaseDate()+" \]"); //DateMidnight formato: "2012-06-28T00:00:00.000-03:00";