Done the Workflow kata:
Find the new, so far best version below...
Cheers,
Joerg
////////////////////////////////////////////////////////////////////////////// // BUILD FUNCTION $buildFolderTree function buildFolderTree(parentFolderObj, folderName) { //Get a list of sublfolders var children = parentFolderObj.childEntity;; var allSubFolders = new Properties(); for (var i in children) { if (children[i] instanceof VcFolder) { var subfolderParent = children[i]; var subName = subfolderParent.name; //Get only the folder name System.log("subfolder Name: " + subName); allSubFolders.put(subName,subfolderParent); //Create an array of all subfolder names } } System.log("allSubFolders array: " + allSubFolders); //Create folder if the folder does not already exists var found = allSubFolders.keys.indexOf(folderName); //Does $folderName exists in array. False = -1 if (found != -1) { System.log("Folder " + folderName + " already exists. Continue with next item"); return allSubFolders.get(folderName); } if (found == -1) { System.log("Building folder " + folderName); var newFolder = parentFolderObj.createFolder(folderName); System.log("Built directory: " + parentFolderObj.name + "/" + folderName); return newFolder; } } //////////////////////////////////////////////////////////////////////////////