From badfac1321d9b31bc2700ee424ba317382ade969 Mon Sep 17 00:00:00 2001 From: rjy7 Date: Mon, 9 Aug 2010 16:43:17 +0000 Subject: [PATCH] NIHVIVO-564 Exclude methods declared on BaseTemplateModel from describe directive display. --- .../webapp/web/directives/dump/DescribeDirective.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/directives/dump/DescribeDirective.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/directives/dump/DescribeDirective.java index dbc2c9544..d69d1e006 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/directives/dump/DescribeDirective.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/directives/dump/DescribeDirective.java @@ -116,11 +116,12 @@ public class DescribeDirective extends BaseTemplateDirectiveModel { } private List getPublicMethods(Class cls) { + List methods = new ArrayList(); - List methods = getDeclaredPublicMethods(cls); - // Don't get methods for classes higher in the class hierarchy than BaseTemplateModel. + // Go up the class hierarchy only until we get to the immediate subclass of BaseTemplateModel if (! cls.getName().equals("edu.cornell.mannlib.vitro.webapp.web.templatemodels.BaseTemplateModel")) { - methods.addAll(getPublicMethods(cls.getSuperclass())); + methods = getDeclaredPublicMethods(cls); + methods.addAll(getPublicMethods(cls.getSuperclass())); } return methods;