com.atlassian.bamboo.plugins.jira.event
Class IssueChangedPublisher

java.lang.Object
  extended by com.atlassian.bamboo.plugins.jira.event.IssueChangedPublisher
All Implemented Interfaces:
com.atlassian.event.remote.RemoteEventProducer, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean

public class IssueChangedPublisher
extends java.lang.Object
implements com.atlassian.event.remote.RemoteEventProducer, org.springframework.beans.factory.InitializingBean, org.springframework.beans.factory.DisposableBean

Listens on internal events. If it detects event that has possibly changed JIRA issue it will publish new event that is then possibly redistributed outside Bamboo


Constructor Summary
IssueChangedPublisher(com.atlassian.event.api.EventPublisher eventPublisher, ResultsSummaryManager resultsSummaryManager, com.atlassian.event.remote.RemoteEventProducerRegistrar remoteEventProducerRegistrar)
           
 
Method Summary
 void afterPropertiesSet()
           
 void destroy()
           
 void handleChainDeindexedEvent(ChainDeindexedEvent event)
           
 void handleChainIndexedEvent(ChainIndexedEvent event)
           
 void handleChainResultDeindexedEvent(ChainResultDeindexedEvent event)
          This event may generate change from JIRA point of view but doesn't have to.
 void handleChainResultIndexedEvent(ChainResultIndexedEvent event)
           
 void handleChainResultUpdatedIndexedEvent(ChainResultUpdateIndexedEvent event)
           
 java.lang.Iterable<java.lang.Class<? extends com.atlassian.event.remote.RemoteEvent>> produces()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IssueChangedPublisher

public IssueChangedPublisher(com.atlassian.event.api.EventPublisher eventPublisher,
                             ResultsSummaryManager resultsSummaryManager,
                             com.atlassian.event.remote.RemoteEventProducerRegistrar remoteEventProducerRegistrar)
Method Detail

afterPropertiesSet

public void afterPropertiesSet()
                        throws java.lang.Exception
Specified by:
afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
Throws:
java.lang.Exception

destroy

public void destroy()
             throws java.lang.Exception
Specified by:
destroy in interface org.springframework.beans.factory.DisposableBean
Throws:
java.lang.Exception

produces

public java.lang.Iterable<java.lang.Class<? extends com.atlassian.event.remote.RemoteEvent>> produces()
Specified by:
produces in interface com.atlassian.event.remote.RemoteEventProducer

handleChainResultUpdatedIndexedEvent

@EventListener
public void handleChainResultUpdatedIndexedEvent(ChainResultUpdateIndexedEvent event)

handleChainResultIndexedEvent

@EventListener
public void handleChainResultIndexedEvent(ChainResultIndexedEvent event)

handleChainDeindexedEvent

@EventListener
public void handleChainDeindexedEvent(ChainDeindexedEvent event)

handleChainIndexedEvent

@EventListener
public void handleChainIndexedEvent(ChainIndexedEvent event)

handleChainResultDeindexedEvent

@EventListener
public void handleChainResultDeindexedEvent(ChainResultDeindexedEvent event)
This event may generate change from JIRA point of view but doesn't have to. I send it every time simplifying Bamboo side implementation. I prefer not to do any checks that assume specific JIRA side implementation (unless it would generate too many irrelevant events causing performance problems) That way it's more flexible for the future even if something will change on JIRA side.

Parameters:
event -


Copyright © 2014 Atlassian Software Systems Pty Ltd. All Rights Reserved.