Событие создания вложения не срабатывает при создании вложения с помощью Java

#java #spring #jira #atlassian-plugin-sdk

Вопрос:

Я надеюсь, что кто-то знаком с Atlassian SDK для сервера Jira.

Я пытаюсь поймать событие, когда вложение добавляется в проблему Jira. Вот мой код, прослушивающий события выпуска:

 @Component
public class IssueEventListener implements InitializingBean, DisposableBean {

    private static final Logger log = LoggerFactory.getLogger(IssueEventListener.class);

    @JiraImport
    private final EventPublisher eventPublisher;

    @Autowired
    public IssueEventListener(EventPublisher eventPublisher) {
        this.eventPublisher = eventPublisher;
    }

    @Override
    public void destroy() throws Exception {
        log.info("Disabling plugin");
        eventPublisher.unregister(this);
    }

    @Override
    public void afterPropertiesSet() throws Exception {
        log.info("Enabling plugin");
        eventPublisher.register(this);
    }

    @EventListener
    public void onIssueEvent(IssueEvent issueEvent) {
        Long eventTypeId = issueEvent.getEventTypeId();
        Issue issue = issueEvent.getIssue();

        if (eventTypeId.equals(EventType.ISSUE_CREATED_ID)) {
            log.warn("Issue {} has been created at {}.", issue.getKey(), issue.getCreated());
            System.out.println("issue created");
        } 
        else if (eventTypeId.equals(EventType.ISSUE_UPDATED_ID)) {
            log.warn("Issue {} has been updated (Attachment created/deleted at {}.", issue.getKey(), issue.getUpdated());
            System.out.println("issue updated");
        }

    }
}
 

Вот код для создания вложения:

 CreateAttachmentParamsBean attachmentParamsBean = new CreateAttachmentParamsBean.Builder(new File(path),
                filename, "text/plain", context.getLoggedInUser(),
                issue).build();
        ChangeItemBean bean = ComponentAccessor.getAttachmentManager().createAttachment(attachmentParamsBean);
 

Этот код добавляет вложение к проблеме, но событие не запускается, и история проблем также не показывает это вложение. С другой стороны, когда я добавляю вложение через страницу выпуска Jira вручную, событие запускается, и в истории также отображается вложение. Так в чем же проблема с этим кодом? Заранее спасибо