Expand my Community achievements bar.

Radically easy to access on brand approved content for distribution and omnichannel performant delivery. AEM Assets Content Hub and Dynamic Media with OpenAPI capabilities is now GA.

AEM Scheduler to remove the asset

Avatar

Community Advisor

Hi Community,

I want to create a scheduler by which I can remove a asset of specific extension from DAM in specific time duration.

I am trying to do it. but getting failure.

ResourceResolver writeResourceResolver;

ResourceResolverFactory rrFactory;

public void run() {

/*  creating a user to remove the asset and did the configuration in user mapping with all access to user.*/   

Map<String, Object> param = new HashMap<String, Object>();

param.put(ResourceResolverFactory.SUBSERVICE, "getResourceResolver");

ResourceResolver resourceResolver = rrFactory.getServiceResourceResolver(param);

Session session = resourceResolver.adaptTo(Session.class);

session.refresh(true);

LOG.debug("User id " + session.getUserID());

if (session != null) {

if (session.itemExists(filename)) {

Node fileNameNode = session.getNode(filename);

fileNameNode.remove();

session.save();

session.logout();

LOG.debug("file Deleted");

}

} else {

LOG.error("session is null");

}

}

6 Replies

Avatar

Level 8

try using the below example. Make sure you have created a system user for the scheduler service. https://helpx.adobe.com/experience-manager/using/aem-first-components1.html

Avatar

Community Advisor

Hi, I am able to achieve this. but now I have issue to find the file with certain extension only. and delete them from specific folder.

Avatar

Level 10

Also - create a workflow to perform CRUD operations on Assets to meet your business requirements. You can create custom workflow steps to search for assets, etc,

Your solution should be

A (Scheduler Service) -> B (Invokes a workflow that performs operations on Assets).

Avatar

Administrator

Have checked the Assets API.. there you can get name and last modified value by calling getName() getLastModified() com.day.cq.dam.api.Asset



Kautuk Sahni