private void parse(String source) {
String rawSignature = source.trim();
- Pattern pattern = Pattern.compile("^.*?\\s+(?<name>\\w+)\\((?<parameters>.*?)\\).*");
+// Java 7:
+// Pattern pattern = Pattern.compile("^.*?\\s+(?<name>\\w+)\\((?<parameters>.*?)\\).*");
+ Pattern pattern = Pattern.compile("^.*?\\s+(\\w+)\\((.*?)\\).*");
Matcher matcher = pattern.matcher(rawSignature);
if (matcher.matches()) {
setMethodName(matcher);
}
private void setMethodName(Matcher matcher) {
- setName(matcher.group("name"));
+// Java 7:
+// setName(matcher.group("name"));
+ setName(matcher.group(1));
}
private void setParameters(Matcher matcher) {
- String parametersGroup = matcher.group("parameters");
+// Java 7:
+// String parametersGroup = matcher.group("parameters");
+ String parametersGroup = matcher.group(2);
if (parametersGroup != null) {
for (String parameter: parseParameters(parametersGroup)) {
if (!parameter.isEmpty()) {
}
private void setParameterSignature(String parameter) {
- Pattern pattern = Pattern.compile("^(?:final\\s+)?(?<type>.+)\\b" + SIMPLE_NAME + "$");
+// Java 7:
+// Pattern pattern = Pattern.compile("^(?:final\\s+)?(?<type>.+)\\b" + SIMPLE_NAME + "$");
+ Pattern pattern = Pattern.compile("^(?:final\\s+)?(.+)\\b" + SIMPLE_NAME + "$");
Matcher matcher = pattern.matcher(parameter);
if (matcher.matches()) {
- String typeGroup = matcher.group("type");
+// Java 7:
+// String typeGroup = matcher.group("type");
+ String typeGroup = matcher.group(1);
if (!isEmpty(typeGroup)) {
typeGroup = typeGroup.trim();
addParameterSignature(Signature.createTypeSignature(typeGroup, false));