public boolean deleteToNonEmptyParent() {
   for (DesktopEntryFile localDesktopEntryFile = this;
       (null != localDesktopEntryFile)
           && (localDesktopEntryFile.exists())
           && (!localDesktopEntryFile.getURI().matches(".*://"))
           && (localDesktopEntryFile.delete());
       localDesktopEntryFile = localDesktopEntryFile.getParentDesktopEntryFile())
     Trace.println("file deleted " + localDesktopEntryFile.toString(), TraceLevel.BASIC);
   return true;
 }