Status: New
Owner: ----
Labels: Type-Defect Priority-Medium Component-VerveineJ
New issue 998 by anne.et...(a)gmail.com: VerveineJ: Method in EnumValue ->
anonymous or inner class
http://code.google.com/p/moose-technology/issues/detail?id=998
Consider the following Java code (real one, got from FindBugs plugin).
There are some method definitions in Enum Value. How VerveineJ should
consider the enum values? as anonymous or inner classes? If it is inner
classes the definition of innerClass method has to be modified since it
considers only that the container is a class (and not a type).
enum FilterKind {
INCLUDE("property.includefilter") {
Collection<String> selectedFiles(UserPreferences u) {
return u.getIncludeFilterFiles();
}
Collection<String> excludedFiles(UserPreferences u) {
return u.getExcludeFilterFiles();
}
void setFiles(UserPreferences u, Collection<String> files) {
u.setIncludeFilterFiles(files);
}
},
EXCLUDE("property.excludefilter") {
Collection<String> selectedFiles(UserPreferences u) {
return u.getExcludeFilterFiles();
}
Collection<String> excludedFiles(UserPreferences u) {
return u.getIncludeFilterFiles();
}
void setFiles(UserPreferences u, Collection<String> files) {
u.setExcludeFilterFiles(files);
}
},
EXCLUDE_BUGS("property.excludebugs") {
Collection<String> selectedFiles(UserPreferences u) {
return u.getExcludeBugsFiles();
}
Collection<String> excludedFiles(UserPreferences u) {
return Collections.emptyList();
}
void setFiles(UserPreferences u, Collection<String> files) {
u.setExcludeBugsFiles(files);
}
};
final String propertyName;
FilterKind(String propertyName) {
this.propertyName = propertyName;
}
abstract Collection<String> selectedFiles(UserPreferences u);
abstract Collection<String> excludedFiles(UserPreferences u);
abstract void setFiles(UserPreferences u, Collection<String> files);
}
Additional information: platform, context which may impact the problem
Please fill in the labels with the following information:
* Type-Defect, Type-Enhancement, Type-Engineering, Type-Review, Type-Other
* Component-XXX
--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings