Expand my Community achievements bar.

Introducing Adobe LLM Optimizer: Own your brand’s presence in AI-Powered search and discovery
SOLVED

Event listener for patterned path

Avatar

Level 1

Hi Friends,

As per the API of observation manager, we can't use regular expression as path while adding the event using Event Listener.

Is there any other way of adding regular expression path except Event Handler(we can use regular expression path).

Use case : I want to trigger the event for home page of all locales and countries  /content/google/en/us/home ->  /content/google/*/*/home

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Hi,

No you can't use RegEx in place of absolute path while adding Listener but you can do while listening.

ObservationManager (Content Repository for Java Technology API 1.0)

OnEvents function you can write condition to check path with regex.

for example :

public void onEvent(EventIterator it) {

  while (it.hasNext()) {

  Event event = it.nextEvent();

  try {

  Property changedProperty = session.getProperty(event.getPath());

  if (changedProperty.getName().equalsIgnoreCase("jcr:title")

  logger.info("*************Property updated: {}", event.getPath());

 

  }

  }

  catch (Exception e) {

  logger.error(e.getMessage(), e);

  }

  }

Thanks

Arun

Arun Patidar

AEM LinksLinkedIn

View solution in original post

2 Replies

Avatar

Correct answer by
Community Advisor

Hi,

No you can't use RegEx in place of absolute path while adding Listener but you can do while listening.

ObservationManager (Content Repository for Java Technology API 1.0)

OnEvents function you can write condition to check path with regex.

for example :

public void onEvent(EventIterator it) {

  while (it.hasNext()) {

  Event event = it.nextEvent();

  try {

  Property changedProperty = session.getProperty(event.getPath());

  if (changedProperty.getName().equalsIgnoreCase("jcr:title")

  logger.info("*************Property updated: {}", event.getPath());

 

  }

  }

  catch (Exception e) {

  logger.error(e.getMessage(), e);

  }

  }

Thanks

Arun

Arun Patidar

AEM LinksLinkedIn

Avatar

Level 2

Hi @vishalm91130305 

Can you share approach you used?