]> git.uio.no Git - ifi-stolz-refaktor.git/blobdiff - software/no.uio.ifi.refaktor/src/no/uio/ifi/refaktor/utils/MethodSignature.java
fixed bug, needs cleaning up
[ifi-stolz-refaktor.git] / software / no.uio.ifi.refaktor / src / no / uio / ifi / refaktor / utils / MethodSignature.java
index dcb20d2f6946439cab26d2fe71c26bca236abb23..8ef5227734dc73e8cde2e87d650951073f5322a3 100644 (file)
@@ -23,7 +23,9 @@ public class MethodSignature {
 
        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);
@@ -32,11 +34,15 @@ public class MethodSignature {
        }
 
        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()) {
@@ -68,10 +74,14 @@ public class MethodSignature {
        }
 
        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));