code: @Procedure
      @Description("apoc.gephi.add(url-or-key, workspace, data, weightproperty, ['exportproperty']) | streams passed in data to Gephi")
      public Stream<ProgressInfo> add(@Name("urlOrKey") String keyOrUrl, @Name("workspace") String workspace, @Name("data") Object data,@Name(value = "weightproperty",defaultValue = "null") String weightproperty,@Name(value = "exportproperties",defaultValue = "[]") List<String> exportproperties) {
          if (workspace == null) workspace = "workspace0";
          String url = getGephiUrl(keyOrUrl)+"/"+Util.encodeUrlComponent(workspace)+"?operation=updateGraph";
          long start = System.currentTimeMillis();
          HashSet<Node> nodes = new HashSet<>(1000);
          HashSet<Relationship> rels = new HashSet<>(10000);
          List<String> propertyNames = new ArrayList<>(exportproperties);
          propertyNames.removeAll(RESERVED);
          if (Graphs.extract(data, nodes, rels)) {
              String payload = toGephiStreaming(nodes, rels, weightproperty, propertyNames.toArray(new String[propertyNames.size()]));
              JsonUtil.loadJson(url,map("method","POST","Content-Type","application/json; charset=utf-8"), payload).count();
              return Stream.of(new ProgressInfo(url,"graph","gephi").update(nodes.size(),rels.size(),nodes.size()).done(start));
          }
          return Stream.empty();
      }
docs: TODO configure property-filters or transfer all properties