8 Skip = ['\n', '\t', ' ']
9 Special = ["(", "\"", ":", ",", "{", "}", ")", "/", "*"]
35 def ExtractFunctions(F, appName):
37 while (Temp != "EOF"):
38 if (Temp == "def" or Temp == "private"):
41 if (GetToken(F) != "="): #We have a function to create object for
42 if (appName == "App1"):
43 extractedFunctionsApp1.write("//Global Object for functions in subscribe method!\n")
44 extractedFunctionsApp1.write("def %s = this.&" % NameofFunc)
45 extractedFunctionsApp1.write("%s\n" % NameofFunc)
47 extractedFunctionsApp2.write("//Global Object for functions in subscribe method!\n")
48 extractedFunctionsApp2.write("def %s = this.&" % NameofFunc)
49 extractedFunctionsApp2.write("%s\n" % NameofFunc)
54 #Extract objects to call functions from App1
55 F1 = open("Extractor/App1/App1.groovy", "r")
56 extractedFunctionsApp1 = open("Extractor/App1/extractedFunctionsApp1.groovy", "w+")
57 ExtractFunctions(F1, "App1")
60 #Extract objects to call functions from App2
61 F2 = open("Extractor/App2/App2.groovy", "r")
62 extractedFunctionsApp2 = open("Extractor/App2/extractedFunctionsApp2.groovy", "w+")
63 ExtractFunctions(F2, "App2")
67 #Save the extracted methods and app1 in a same file to extract information
68 extractorFile = open("Extractor/extractorFile.groovy", "w+")
69 Extractor = open("Extractor/Extractor.groovy", "r")
70 F1 = open("Extractor/App1/App1.groovy", "r")
72 extractorFile.write("////////////////////\n")
73 extractorFile.write("@Field App\n")
74 extractorFile.write("App = \"App1\"")
75 extractorFile.write("\n")
76 for line in Extractor:
77 extractorFile.write(line)
78 extractorFile.write("\n\n")
80 extractorFile.write(line)
84 #Run the file to extract the objects
85 os.system("groovy Extractor/extractorFile.groovy")
88 #Save the extracted methods and app2 in a same file to extract information
89 extractorFile = open("Extractor/extractorFile.groovy", "w+")
90 Extractor = open("Extractor/Extractor.groovy", "r")
91 F2 = open("Extractor/App2/App2.groovy", "r")
93 extractorFile.write("////////////////////\n")
94 extractorFile.write("@Field App\n")
95 extractorFile.write("App = \"App2\"")
96 extractorFile.write("\n")
97 for line in Extractor:
98 extractorFile.write(line)
99 extractorFile.write("\n\n")
101 extractorFile.write(line)
102 #Run the file to extract the objects
103 extractorFile.close()
106 os.system("groovy Extractor/extractorFile.groovy")