Principal principal)
throws ProcessingException {
if (principal.getName().length()>0) {
// get the helpers
Macro macro = nat.getMacroHelper();
SlideToken slidetoken = new SlideTokenImpl(new CredentialsToken(caller));
// get the path of the current authenticated user
String selfUri = config.getUsersPath()+"/"+caller.getName();
String strUri = config.getUsersPath()+"/"+principal.getName();
// do the actual transaction
try {
try {
nat.begin();
// the user may not delete herself
if ( !selfUri.equals(strUri)) {
macro.delete(slidetoken, strUri,
new MacroParameters(true, false));
}
nat.commit();