code: def get_ipd(
      self,
      url="http://nucleus.org",
      series=0,
      index=0,
      channel=0,
      metadata={},
  ):
      d = cellprofiler_core.pipeline.J.make_map(**metadata)
      jipd = cellprofiler_core.pipeline.J.run_script(
          """
              var uri = new java.net.URI(url);
              var f = new Packages.org.cellprofiler.imageset.ImageFile(uri);
              var fd = new Packages.org.cellprofiler.imageset.ImageFileDetails(f);
              var s = new Packages.org.cellprofiler.imageset.ImageSeries(f, series);
              var sd = new Packages.org.cellprofiler.imageset.ImageSeriesDetails(s, fd);
              var p = new Packages.org.cellprofiler.imageset.ImagePlane(s, index, channel);
              var ipd = new Packages.org.cellprofiler.imageset.ImagePlaneDetails(p, sd);
              ipd.putAll(d);
              ipd;
              """,
          dict(
              url=url, series=series, index=index, channel=channel, d=d
          ),
      )
      return cellprofiler_core.pipeline.ImagePlane(jipd)
  
imports: import unittest
  import cellprofiler_core.pipeline
label_desc: Use image node_id 1 for calling the TestImagePlaneDetails obj's underlying member method code with example usage: obj.get_ipd(url, series, index, channel, metadata) and returns: cellprofiler_core