1297 |
} |
} |
1298 |
return null; |
return null; |
1299 |
} |
} |
1300 |
|
|
1301 |
|
private Map implementedInterfacesCache = new HashMap(); |
1302 |
|
|
1303 |
|
protected Set getImplementedInterfaces(ClassDoc classDoc) |
1304 |
|
{ |
1305 |
|
Set result = (Set)implementedInterfacesCache.get(classDoc); |
1306 |
|
if (null == result) { |
1307 |
|
result = new TreeSet(); |
1308 |
|
|
1309 |
|
for (ClassDoc cd = classDoc; cd != null; cd = cd.superclass()) { |
1310 |
|
ClassDoc[] interfaces = cd.interfaces(); |
1311 |
|
for (int i=0; i<interfaces.length; ++i) { |
1312 |
|
result.add(interfaces[i]); |
1313 |
|
InterfaceRelation relation |
1314 |
|
= (InterfaceRelation)getInterfaceRelations().get(interfaces[i]); |
1315 |
|
if (null != relation) { |
1316 |
|
result.addAll(relation.superInterfaces); |
1317 |
|
} |
1318 |
|
else { |
1319 |
|
System.err.println("no relation for interface " + interfaces[i]); |
1320 |
|
} |
1321 |
|
} |
1322 |
|
} |
1323 |
|
|
1324 |
|
implementedInterfacesCache.put(classDoc, result); |
1325 |
|
} |
1326 |
|
|
1327 |
|
return result; |
1328 |
|
} |
1329 |
} |
} |