HTTPDELETE.HOME <- function(uri, fnargs, userinfo){
#input
Rpackage <- uri[1];
Robject <- uri[2];
Rtoolong <- uri[3];
#user info
Rusername <- userinfo$login;
homedir <- paste(config("storedir"), "user", sep="/");
userdir <- paste(homedir, Rusername, sep="/");
packagedir <- paste(userdir, Rpackage, sep="/");
#some uri validation:
if(is.na(Rpackage) || !is.na(Rtoolong)){
stop("Invalid URI. Use DELETE /home/mypackage or DELETE /home/mypackage/someobject.")
}
#check for arguments:
if(length(fnargs) > 0){
stop("Delete a store does not have any arguments. (", names(fnargs), ")")
}
#DELETE /home/mypackage
if(is.na(Robject)){
validateUserStore(Rusername, Rpackage);
#remove the package or store
res <- file.rename(packagedir, tempfile());
if(res != TRUE){
stop("Package removal failed. Check permissions.")
}
return(object2jsonfile("/home"));
}
#DELETE /home/mypackage/someobjectb65c83ab
validateUserStore(Rusername, Rpackage, "store");
#Remove the object from the store.
removeFromUserStore(Rusername, Rpackage, Robject);
#return
return(object2jsonfile(paste("/R/user", Rusername, Rpackage, sep="/")));
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.