174 |
for (int i=0, ilim=rootDoc.options().length; i<ilim; ++i) { |
for (int i=0, ilim=rootDoc.options().length; i<ilim; ++i) { |
175 |
|
|
176 |
String[] optionArr = rootDoc.options()[i]; |
String[] optionArr = rootDoc.options()[i]; |
177 |
String optionTag = optionArr[0]; |
String _optionTag = optionArr[0]; |
178 |
|
|
179 |
DocletOption option = (DocletOption)nameToOptionMap.get(optionTag); |
DocletOption option = (DocletOption)nameToOptionMap.get(_optionTag); |
180 |
|
|
181 |
if (null != option) { |
if (null != option) { |
182 |
option.set(optionArr); |
option.set(optionArr); |
789 |
*/ |
*/ |
790 |
private Map collectUsage() { |
private Map collectUsage() { |
791 |
|
|
792 |
Map usedClassToPackagesMap = new HashMap(); |
Map _usedClassToPackagesMap = new HashMap(); |
793 |
|
|
794 |
ClassDoc[] classes = rootDoc.classes(); |
ClassDoc[] classes = rootDoc.classes(); |
795 |
for (int i = 0, ilim = classes.length; i < ilim; ++ i) { |
for (int i = 0, ilim = classes.length; i < ilim; ++ i) { |
802 |
Iterator it = relation.implementingClasses.iterator(); |
Iterator it = relation.implementingClasses.iterator(); |
803 |
while (it.hasNext()) { |
while (it.hasNext()) { |
804 |
ClassDoc implementor = (ClassDoc)it.next(); |
ClassDoc implementor = (ClassDoc)it.next(); |
805 |
addUsedBy(usedClassToPackagesMap, |
addUsedBy(_usedClassToPackagesMap, |
806 |
clazz, UsageType.CLASS_IMPLEMENTING, implementor, implementor.containingPackage()); |
clazz, UsageType.CLASS_IMPLEMENTING, implementor, implementor.containingPackage()); |
807 |
} |
} |
808 |
} |
} |
810 |
// classes derived from |
// classes derived from |
811 |
for (ClassDoc superclass = clazz.superclass(); superclass != null; |
for (ClassDoc superclass = clazz.superclass(); superclass != null; |
812 |
superclass = superclass.superclass()) { |
superclass = superclass.superclass()) { |
813 |
addUsedBy(usedClassToPackagesMap, |
addUsedBy(_usedClassToPackagesMap, |
814 |
superclass, UsageType.CLASS_DERIVED_FROM, clazz, clazz.containingPackage()); |
superclass, UsageType.CLASS_DERIVED_FROM, clazz, clazz.containingPackage()); |
815 |
} |
} |
816 |
} |
} |
822 |
// fields of type |
// fields of type |
823 |
ClassDoc fieldType = field.type().asClassDoc(); |
ClassDoc fieldType = field.type().asClassDoc(); |
824 |
if (null != fieldType) { |
if (null != fieldType) { |
825 |
addUsedBy(usedClassToPackagesMap, |
addUsedBy(_usedClassToPackagesMap, |
826 |
fieldType, UsageType.FIELD_OF_TYPE, |
fieldType, UsageType.FIELD_OF_TYPE, |
827 |
field, clazz.containingPackage()); |
field, clazz.containingPackage()); |
828 |
} |
} |
836 |
|
|
837 |
ClassDoc returnType = method.returnType().asClassDoc(); |
ClassDoc returnType = method.returnType().asClassDoc(); |
838 |
if (null != returnType) { |
if (null != returnType) { |
839 |
addUsedBy(usedClassToPackagesMap, |
addUsedBy(_usedClassToPackagesMap, |
840 |
returnType, UsageType.METHOD_WITH_RETURN_TYPE, |
returnType, UsageType.METHOD_WITH_RETURN_TYPE, |
841 |
method, clazz.containingPackage()); |
method, clazz.containingPackage()); |
842 |
} |
} |
848 |
Parameter parameter = parameters[k]; |
Parameter parameter = parameters[k]; |
849 |
ClassDoc parameterType = parameter.type().asClassDoc(); |
ClassDoc parameterType = parameter.type().asClassDoc(); |
850 |
if (null != parameterType) { |
if (null != parameterType) { |
851 |
addUsedBy(usedClassToPackagesMap, |
addUsedBy(_usedClassToPackagesMap, |
852 |
parameterType, UsageType.METHOD_WITH_PARAMETER_TYPE, |
parameterType, UsageType.METHOD_WITH_PARAMETER_TYPE, |
853 |
method, clazz.containingPackage()); |
method, clazz.containingPackage()); |
854 |
} |
} |
859 |
ClassDoc[] thrownExceptions = method.thrownExceptions(); |
ClassDoc[] thrownExceptions = method.thrownExceptions(); |
860 |
for (int k = 0, klim = thrownExceptions.length; k < klim; ++ k) { |
for (int k = 0, klim = thrownExceptions.length; k < klim; ++ k) { |
861 |
ClassDoc thrownException = thrownExceptions[k]; |
ClassDoc thrownException = thrownExceptions[k]; |
862 |
addUsedBy(usedClassToPackagesMap, |
addUsedBy(_usedClassToPackagesMap, |
863 |
thrownException, UsageType.METHOD_WITH_THROWN_TYPE, |
thrownException, UsageType.METHOD_WITH_THROWN_TYPE, |
864 |
method, clazz.containingPackage()); |
method, clazz.containingPackage()); |
865 |
} |
} |
878 |
Parameter parameter = parameters[k]; |
Parameter parameter = parameters[k]; |
879 |
ClassDoc parameterType = parameter.type().asClassDoc(); |
ClassDoc parameterType = parameter.type().asClassDoc(); |
880 |
if (null != parameterType) { |
if (null != parameterType) { |
881 |
addUsedBy(usedClassToPackagesMap, |
addUsedBy(_usedClassToPackagesMap, |
882 |
parameterType, UsageType.CONSTRUCTOR_WITH_PARAMETER_TYPE, |
parameterType, UsageType.CONSTRUCTOR_WITH_PARAMETER_TYPE, |
883 |
constructor, clazz.containingPackage()); |
constructor, clazz.containingPackage()); |
884 |
} |
} |
889 |
ClassDoc[] thrownExceptions = constructor.thrownExceptions(); |
ClassDoc[] thrownExceptions = constructor.thrownExceptions(); |
890 |
for (int k = 0, klim = thrownExceptions.length; k < klim; ++ k) { |
for (int k = 0, klim = thrownExceptions.length; k < klim; ++ k) { |
891 |
ClassDoc thrownException = thrownExceptions[k]; |
ClassDoc thrownException = thrownExceptions[k]; |
892 |
addUsedBy(usedClassToPackagesMap, |
addUsedBy(_usedClassToPackagesMap, |
893 |
thrownException, UsageType.CONSTRUCTOR_WITH_THROWN_TYPE, |
thrownException, UsageType.CONSTRUCTOR_WITH_THROWN_TYPE, |
894 |
constructor, clazz.containingPackage()); |
constructor, clazz.containingPackage()); |
895 |
} |
} |
896 |
} |
} |
897 |
} |
} |
898 |
return usedClassToPackagesMap; |
return _usedClassToPackagesMap; |
899 |
} |
} |
900 |
|
|
901 |
Map usedClassToPackagesMap = null; |
private Map usedClassToPackagesMap = null; |
902 |
|
|
903 |
protected Map getUsageOfClass(ClassDoc classDoc) |
protected Map getUsageOfClass(ClassDoc classDoc) |
904 |
{ |
{ |
905 |
if (null == this.usedClassToPackagesMap) { |
if (null == this.usedClassToPackagesMap) { |
906 |
this.usedClassToPackagesMap = collectUsage(); |
this.usedClassToPackagesMap = collectUsage(); |
907 |
} |
} |
908 |
return (Map)usedClassToPackagesMap.get(classDoc); |
return (Map)this.usedClassToPackagesMap.get(classDoc); |
909 |
} |
} |
910 |
|
|
911 |
protected static class UsageType |
protected static class UsageType |