Advertisement
Guest User

Untitled

a guest
Dec 6th, 2018
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Groovy 1.03 KB | None | 0 0
  1. def line = "test (HttpServletRequest request,String sessionId,@RequestBody(required = false) @ApiParam(\"PlatformFilterPost payload for filter.\")PlatformFilterPost platformFilterPost, test) {";
  2.  
  3. println(getMethodArguments(line))
  4.  
  5. def getMethodArguments(methodLine) {
  6.     def methodSignature = getMethodSignature(methodLine);
  7.     if (methodSignature) {
  8.         def methodArguments = getMethodSignatureArguments(methodSignature);
  9.         if (methodArguments) {
  10.             return methodArguments;
  11.         }
  12.         else {
  13.             return null;
  14.         }
  15.     }
  16.     else {
  17.         return null;
  18.     }
  19. }
  20.  
  21. def getMethodSignature(methodLine) {
  22.     return methodLine.find( /\(([\s\S]+?)\)(?=[^()]*(\}|\{|;))/ ) {
  23.         it[1];
  24.     };
  25. }
  26.  
  27. def getMethodSignatureArguments(methodSignature) {
  28.     def matcher = methodSignature =~ /((?:(\@\w+\(.*?\))\s*?)*?(?:\w+)(?:\s+)(\w+)(\,|\s)*?)+/;
  29.     def args = []
  30.     while(matcher.find()){
  31.         args.add(matcher.group().replaceAll(/(.+\s+)/,"").trim())
  32.     };
  33.     return args;
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement