use of com.cognifide.cq.cqsm.api.actions.Action in project APM by Cognifide.
the class DestroyUser method execute.
@Override
public ActionResult execute(Context context) throws ActionExecutionException {
ActionResult actionResult;
try {
User user = AuthorizablesUtils.getUser(context, userId);
context.setCurrentAuthorizable(user);
Action removeFromGroups = new RemoveFromGroup(getGroups(user));
ActionResult purgeResult = purge.execute(context);
ActionResult removeFromGroupsResult = removeFromGroups.execute(context);
ActionResult removeResult = remove.execute(context);
actionResult = new CompositeActionResult(purgeResult, removeFromGroupsResult, removeResult);
} catch (RepositoryException | ActionExecutionException e) {
actionResult = new ActionResult();
actionResult.logError(MessagingUtils.createMessage(e));
}
return actionResult;
}
use of com.cognifide.cq.cqsm.api.actions.Action in project APM by Cognifide.
the class DestroyUser method simulate.
@Override
public ActionResult simulate(Context context) throws ActionExecutionException {
ActionResult actionResult;
try {
User user = AuthorizablesUtils.getUser(context, userId);
context.setCurrentAuthorizable(user);
Action removeFromGroups = new RemoveFromGroup(getGroups(user));
ActionResult purgeResult = purge.simulate(context);
ActionResult removeFromGroupsResult = removeFromGroups.execute(context);
ActionResult removeResult = remove.simulate(context);
actionResult = new CompositeActionResult(purgeResult, removeFromGroupsResult, removeResult);
} catch (RepositoryException | ActionExecutionException e) {
actionResult = new ActionResult();
actionResult.logError(MessagingUtils.createMessage(e));
}
return actionResult;
}
use of com.cognifide.cq.cqsm.api.actions.Action in project APM by Cognifide.
the class ScriptManagerImpl method parseIncludeDescriptors.
private List<ActionDescriptor> parseIncludeDescriptors(Script script, Map<String, String> definitions, List<Script> includes, ResourceResolver resolver) throws ExecutionException {
final List<ActionDescriptor> descriptors = new LinkedList<>();
LineIterator lineIterator = IOUtils.lineIterator(new StringReader(script.getData()));
while (lineIterator.hasNext()) {
String line = lineIterator.next();
if (ScriptUtils.isAction(line)) {
final String command = ScriptUtils.parseCommand(line, definitions);
final ActionDescriptor descriptor = actionFactory.evaluate(command);
final Action action = descriptor.getAction();
descriptors.add(descriptor);
if (action instanceof DefinitionProvider) {
definitions.putAll(((DefinitionProvider) action).provideDefinitions(definitions));
} else if (action instanceof ScriptProvider) {
getIncludes(definitions, includes, resolver, descriptors, (ScriptProvider) action);
}
}
}
return descriptors;
}
Aggregations