docs: private Node createZipEntryPath( Node parentNode,
                                       ZipEntry entry ) throws RepositoryException {
          Node zipEntryNode = parentNode;
          String entryName = entry.getName();
          String[] segments = entryName.split("/");
          for (int i = 0; i < segments.length; i++) {
              String segmentName = segments[i];
              try {
                  zipEntryNode = zipEntryNode.getNode(segmentName);
              } catch (PathNotFoundException e) {
                  // the path does not exist yet - create it
                  boolean isLastSegment = (i == segments.length - 1);
                  String segmentPrimaryType = isLastSegment ? (entry.isDirectory() ? JcrConstants.NT_FOLDER : JcrConstants.NT_FILE) : JcrConstants.NT_FOLDER;
                  zipEntryNode = zipEntryNode.addNode(segmentName, segmentPrimaryType);
              }
          }
          return zipEntryNode;
      }