1 /** 2 * Workflow to delete a list of assets/folders given their assetID/Path using a REST call 3 */ 4 var REST = library.REST.REST(); 5 var myData = {}; 6 7 /** 8 * Deletes the file or folder and adds an object with the ID/path to myData 9 * 10 * @param theSource - the Id of the asset to delete or the path of the folder to delete 11 */ 12 function fileOrFolderDelete(theSource) { 13 var aFile = fileManager.getFileObjectById(theSource); 14 var aFolder; 15 if (aFile == null) { 16 try { 17 aFolder = new ManagedFolder(theSource); 18 fileManager.folderDelete(aFolder); 19 myData[theSource] = aFolder.path; 20 return; 21 } catch (err) { 22 REST.submitError(theSource, "The file or folder does not exist"); 23 return; 24 } 25 } 26 fileManager.fileDelete(aFile); 27 myData[theSource] = aFile.assetId; 28 } 29 30 /** 31 * Deletes files or folders by their AssetIDs or paths. 32 * @description Deletes the files specified by AssetID or path in 'src' and returns the AssetID or path given for 33 * each. These AssetIDs or paths are parsed into a text object keyed by AssetID from the JSON file in which they are 34 * contained, and by default are displayed to the user. 35 * @example 'MBurl'/wf/restapi/1/delete?src=["AssetID"] 36 * @example <a target="_blank" href=http://127.0.0.1:55555/wf/restapi/1/delete?src=["12345"]>http://127.0.0.1:55555/wf/restapi/1/delete?src=["12345"]</a> 37 * @class Deletes files or folders by their AssetIDs or paths. 38 * @name Delete 39 * @param src AssetID/list of assetIDs or path/list of paths of files or folders for deletion. 40 * @returns ( {'AssetID': "AssetID/path",...} ) 41 */ 42 function main() { 43 var aParameters = REST.getParametersToIterate("src"); 44 if (myData.error != null) { 45 return REST.formatResponse(); 46 } 47 REST.iterateThroughParameters(aParameters, fileOrFolderDelete); 48 return REST.formatResponse(); 49 } 50 main(); 51