docs: @Override
      public ArtifactContainer getEnclosingContainer() {
          // The enclosing container may be set when the entry is
          // created, in which case the enclosing container lock is null
          // and is never needed.
          //
          // The entry can be created in these ways:
          //
          // ZipFileContainer.createEntry(ArtifactContainer, String, String, String, int, ZipEntry)
          // -- A caching factory method of zip file container entries.
          // -- Caches intermediate entries.  Non-container leaf entries are not cached.
          //
          // That is invoked in several ways:
          //
          // By:
          // ZipFileContainer.createEntry(String, String, String)
          // Which is invoked by:
          // ZipFileEntry.getEnclosingContainer()
          // -- Used when the enclosing container is not set when the entry was
          //    created.  This happens when the entry was created with a null
          //    enclosing container, which only happens when the entry is created
          //    from 'ZipFileContainer.getEntry'.
          // -- This is the core non-trivial step of resolving the enclosing container.
          // -- As a first step, if the parent is the root zip container, that is
          //    obtained as the enclosing container.
          // -- As a second step, the enclosing entry of this entry is obtained, then
          //    the enclosing container is obtained by interpreting that entry as a
          //    container.
          // -- The enclosing container must be obtained from the enclosing entry
          //    since those are cached and re-used, and since the reference to those
          //    keep a reference to their interpreted container.
          //
          // By zip container iterators:
          //
          // -- com.ibm.ws.artifact.zip.internal.ZipFileEntry.getEnclosingContainer()
          // ZipFileContainer.RootZipFileEntryIterator.next()
          // -- always provides the root zip container as the enclosing container
          // ZipFileNestedDirContainer.NestedZipFileEntryIterator.next()
          // -- always provides the nested zip container as the enclosing container
          //
          // ZipFileContainer.getEntry(String, boolean)
          // -- always provides null as the enclosing container
          //
          // As a public API, 'getEnclosingContainer' may be invoked externally.
          // Locally, 'getEnclosingContainer' is only invoked from:
          // ZipFileEntry.convertToContainer(boolean)
          // That is also a public API.
          // Locally, that is only invoked from:
          // ZipFileEntry.convertToContainer(boolean)
          // That is also a public API.
  
          if ( enclosingContainer == null ) {
              synchronized( this ) { // Having a new object to guard 'enclosingContainer' is too many objects.
                  if ( enclosingContainer == null ) {
                      String a_enclosingPath = PathUtils.getParent(a_path);
                      int parentLen = a_enclosingPath.length();
                      if ( parentLen == 1 ) { // a_enclosingPath == "/"
                          enclosingContainer = rootContainer;
                      } else {
                          String r_enclosingPath = a_enclosingPath.substring(1);
                          int lastSlash = r_enclosingPath.lastIndexOf('/');
                          String enclosingName;
                          if ( lastSlash == -1 ) {
                              enclosingName = r_enclosingPath; // r_enclosingPath = "name"
                          } else {
                              enclosingName = r_enclosingPath.substring(lastSlash + 1); // r_enclosingPath = "parent/child/name"
                          }
                          ZipFileEntry entryInEnclosingContainer =
                              rootContainer.createEntry(enclosingName, a_enclosingPath);
                          enclosingContainer = entryInEnclosingContainer.convertToLocalContainer();
                      }
                  }
              }
          }
          return enclosingContainer;
      }