MCPcopy Create free account
hub / github.com/GateNLP/gate-core / rmdir

Method rmdir

src/main/java/gate/util/Files.java:472–500  ·  view source on GitHub ↗

Recursively remove a directory even if it contains other files or directories . Returns true when the directory and all its contents are successfully removed, else false.

(File dir)

Source from the content-addressed store, hash-verified

470 * contents are successfully removed, else false.
471 */
472 public static boolean rmdir(File dir) {
473 if(dir == null || ! dir.isDirectory()) // only delete directories
474 return false;
475
476 // list all the members of the dir
477 String[] members = dir.list();
478
479 // return value indicating success or failure
480 boolean succeeded = true;
481
482 // for each member, if is dir then recursively delete; if file then delete
483 for(int i = 0; i<members.length; i++) {
484 File member = new File(dir, members[i]);
485
486 if(member.isFile()) {
487 if(! member.delete())
488 succeeded = false;
489 } else {
490 if(! Files.rmdir(member))
491 succeeded = false;
492 }
493 }
494
495 // delete the directory itself
496 dir.delete();
497
498 // return status value
499 return succeeded;
500 } // rmdir(File)
501
502 /**
503 * This method updates an XML element with a new set of attributes.

Callers 3

deleteMethod · 0.95
generateCorpusMethod · 0.95
evaluateCorpusMethod · 0.95

Calls 2

deleteMethod · 0.65
listMethod · 0.45

Tested by

no test coverage detected