docs: void destroy() {
          for (DistributedObjectFuture future : proxies.values()) {
              if (!future.isSetAndInitialized()) {
                  continue;
              }
  
              DistributedObject distributedObject = extractDistributedObject(future);
              invalidate(distributedObject);
          }
          proxies.clear();
      }