code: @Override
      public void removeEdge(final KamEdge kamEdge) {
          // remove storage of kam edge
          idEdgeMap.remove(kamEdge.getId());
          edgeIdMap.remove(kamEdge);
  
          // break edge association with source and target nodes
          nodeSourceMap.get(kamEdge.getSourceNode()).remove(kamEdge);
          nodeTargetMap.get(kamEdge.getTargetNode()).remove(kamEdge);
  
          // rebuild hashcode
          this.hashCode = generateHashCode();
      }
docs: {@inheritDoc}