Adding a label from a listener

Hello,

I am working on a custom blueprint that should force the users to add labels to their page, before saving the page. The approach for this that I took is that when the user tries to save the blank page thats created by the blueprint, the code below listening for the PageCreateEvent and its during this time that I am currently trying to add an hardcoded label. But as of now I am not sure why the label is not getting added to the page. I do see those sysouts on the console but am clueless why the label is not getting added to the page. Please help.

public class PageCreatedListener implements DisposableBean {
	
	 protected EventPublisher eventPublisher;
	 private final LabelManager labelManager;
	 private final PageManager pageManager;
	 private final Logger log;

	 
	 public PageCreatedListener(EventPublisher eventPublisher, LabelManager labelManager, PageManager pageManager) {
	        this.eventPublisher = eventPublisher;
	        eventPublisher.register(this);
	        this.labelManager = labelManager;
	        this.pageManager = pageManager;
	        log = LoggerFactory.getLogger(PageCreatedListener.class);
	 }
	 
	 @EventListener
	 public void pageCreateFromTemplateEvent(PageCreateEvent event) {
		 Page page= pageManager.getPage(event.getPage().getId());
		 
		
		System.out.println("PAGE ID " + page.getId());
		
		labelManager.addLabel((Labelable) page, new Label("timesheet"));
		System.out.println("LABEL 1 ADDED");
        labelManager.addLabel((Labelable) page, new Label("timesheettwo"));
        System.out.println("LABEL 2 ADDED");

		 
	 }

	@Override
	public void destroy() throws Exception {
		eventPublisher.unregister(this);
		
	}
}

1 answer

1 accepted

To add a label to a page, try to use the LabelUtil.addLabel("label", labelManager, page)- method.
This works fine for me:
for(String i : labels)LabelUtil.addLabel(i, labelManager, event.getPage());

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Posted Jul 10, 2018 in Confluence

We want to see the templates you've created in Confluence!

Hi Community, Jessica here from the Confluence Product Marketing team!  July’s community challenge is all about sharing pictures  — and as an extension of our first post on what ...

524 views 19 11
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you