dagger
dagger copied to clipboard
dot should correlate Provider bindings to their types
I noticed in dot output that while a type's dependencies are shown (in the below case Credentials), these dependencies are not correlated when the type is injected as a Provider (in the below case, fully qualified to Provider<denominator.Credentials>).
It would seem we could show a more accurate sense of the graph, if we could correlate Provider<Foo> with Foo.
Example output.
digraph G1 {
concentrate = true;
n2 [label="AllProfileResourceRecordSetApi$Factory"];
n3 [label="ResourceRecordSetApi$Factory"];
n2 -> n3;
Closeable -> Route53Api;
Credentials -> Provider;
n4 [label="Set<com.google.common.base.Supplier<denominator.Credentials>>"];
Credentials -> n4;
DNSApi -> n3;
DNSApi -> ZoneApi;
n5 [label="GeoResourceRecordSetApi$Factory"];
DNSApi -> n5;
DNSApi -> n2;
DNSApiManager -> Provider;
DNSApiManager -> Closeable;
DNSApiManager -> DNSApi;
n3 -> Route53Api;
n6 [label="Route53Provider$ConvertToJcloudsCredentials"];
Route53Api -> n6;
n7 [label="Provider<denominator.Credentials>"];
n6 -> n7;
n8 [label="Unbound:com.google.common.base.Supplier<denominator.Credentials>"];
n4 -> n8;
ZoneApi -> Route53Api;
}
Oooh, that's a major bug.