Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package de.myCompany.mbhBridge.plugin;
- import com.atlassian.event.api.EventListener;
- import com.atlassian.event.api.EventPublisher;
- import com.atlassian.jira.event.issue.IssueEvent;
- import com.atlassian.jira.event.type.EventType;
- import com.atlassian.jira.issue.Issue;
- import com.atlassian.plugin.spring.scanner.annotation.imports.JiraImport;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.DisposableBean;
- import org.springframework.beans.factory.InitializingBean;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- @Component
- public class IssueCreatedResolvedListener implements InitializingBean, DisposableBean {
- private static final Logger log = LoggerFactory.getLogger(IssueCreatedResolvedListener.class);
- @JiraImport
- private final EventPublisher eventPublisher;
- @Autowired
- public IssueCreatedResolvedListener(EventPublisher eventPublisher) {
- this.eventPublisher = eventPublisher;
- }
- /**
- * Called when the plugin has been enabled.
- * @throws Exception
- */
- @Override
- public void afterPropertiesSet() throws Exception {
- log.info("Enabling plugin");
- eventPublisher.register(this);
- }
- /**
- * Called when the plugin is being disabled or removed.
- * @throws Exception
- */
- @Override
- public void destroy() throws Exception {
- log.info("Disabling plugin");
- eventPublisher.unregister(this);
- }
- @EventListener
- public void onIssueEvent(IssueEvent issueEvent) {
- Long eventTypeId = issueEvent.getEventTypeId();
- Issue issue = issueEvent.getIssue();
- if (eventTypeId.equals(EventType.ISSUE_CREATED_ID)) {
- log.info("Issue {} has been created at {}.", issue.getKey(), issue.getCreated());
- } else if (eventTypeId.equals(EventType.ISSUE_RESOLVED_ID)) {
- log.info("Issue {} has been resolved at {}.", issue.getKey(), issue.getResolutionDate());
- } else if (eventTypeId.equals(EventType.ISSUE_CLOSED_ID)) {
- log.info("Issue {} has been closed at {}.", issue.getKey(), issue.getUpdated());
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement