class_docstr: Base class for plugins that distribute graphs to workflows
class_docstr_tok: ["Base","class","for","plugins","that","distribute","graphs","to","workflows"]
code: def _get_args(self, node, keywords):
      values = ()
      for keyword in keywords:
          value = getattr(self, "_" + keyword)
          if keyword == "template" and os.path.isfile(value):
              with open(value) as f:
                  value = f.read()
          if (
              hasattr(node, "plugin_args")
              and isinstance(node.plugin_args, dict)
              and keyword in node.plugin_args
          ):
              if keyword == "template" and os.path.isfile(
                  node.plugin_args[keyword]
              ):
                  with open(node.plugin_args[keyword]) as f:
                      tmp_value = f.read()
              else:
                  tmp_value = node.plugin_args[keyword]
  
              if (
                  "overwrite" in node.plugin_args
                  and node.plugin_args["overwrite"]
              ):
                  value = tmp_value
              else:
                  value += tmp_value
          values += (value,)
      return values
  
imports: import sys
  from copy import deepcopy
  from glob import glob
  import os
  import shutil
  from time import sleep, time
  from traceback import format_exception
  import numpy
  from ...None import logging
  from ...utils.misc import str2bool
  from ..engine.utils import topological_sort, load_resultfile
  from ..engine import MapNode
  from .tools import report_crash, report_nodes_not_run, create_pyscript
label_desc: Use image node_id 3 for calling the GraphPluginBase obj's underlying member method code with example usage: obj._get_args(node, keywords) and returns: values