code: def do(self):
      r = open(self.input_path)
      print("convert data...")
  
      data = json.loads(r.read())
      self.meta_generator.parse(data)
  
      self.neighbor_index = {}
      self.edge_neighbor_index = {}
      if "node" in self.meta_data:
          for node in data["nodes"]:
              pid = node["id"] % self.partition_num
              self.parse_node(
                  node,
                  self.meta_data["node"],
                  node["id"],
                  node["weight"],
                  self.index_data[pid],
              )
  
      if "edge" in self.meta_data:
          for edge in data["edges"]:
              src_id = edge["src"]
              dst_id = edge["dst"]
              etype = edge["type"]
              pid = src_id % self.partition_num
  
              etype_no = self.meta_generator.gmeta.edge_type_info[
                  str(etype)
              ]
              self.parse_edge(
                  edge,
                  self.meta_data["edge"],
                  (src_id, dst_id, etype_no),
                  edge["weight"],
                  self.index_data[pid],
              )
  
      if len(self.neighbor_index) > 0:
          for key in self.neighbor_index:
              for edge in data["edges"]:
                  src_id = edge["src"]
                  dst_id = edge["dst"]
                  etype = edge["type"]
                  pid = src_id % self.partition_num
                  index_data = self.index_data[pid]
                  self.check_dict(index_data, key, "dict")
                  self.check_dict(index_data[key], src_id)
                  index_data[key][src_id].append(
                      self.neighbor_index[key][dst_id]
                  )
  
      if len(self.edge_neighbor_index) > 0:
          for key in self.edge_neighbor_index:
              for src_id in self.edge_neighbor_index[key]:
                  pid = src_id % self.partition_num
                  index_data = self.index_data[pid]
                  self.check_dict(index_data, key, "dict")
                  t = self.edge_neighbor_index[key][src_id]
                  index_data[key][src_id] = t
  
      self.write_index()
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import json
  import sys
  import struct
  from euler.tools import json2meta
  from euler.tools.util import *
  import os
label_desc: Use image node_id 3 for calling the Converter obj's underlying member method code with example usage: obj.do() without return types