def frum(self, fromPath, sourceVar, loopVariablePrefix): """ indexName NAME USED TO REFER TO HIGH LEVEL DOCUMENT loopVariablePrefix PREFIX FOR LOOP VARIABLES """ loopCode = "if (<PATH> != null){ for(<VAR> : <PATH>){\n<CODE>\n}}\n" self.prefixMap = [] code = "<CODE>" path = split_field(fromPath) # ADD LOCAL VARIABLES from pyLibrary.queries.es09.util import INDEX_CACHE columns = INDEX_CACHE[path[0]].columns for i, c in enumerate(columns): if c.name == "attachments": Log.debug("") if c.name.find("\\.") >= 0: self.prefixMap.insert( 0, { "path": c.name, "variable": "get(" + sourceVar + ", \"" + c.name.replace("\\.", ".") + "\")" }) else: self.prefixMap.insert(0, { "path": c.name, "variable": sourceVar + ".?" + c.name }) # ADD LOOP VARIABLES currPath = [] # self.prefixMap.insert(0, {"path": path[0], "variable": path[0]}) for i, step in enumerate(path[1::]): loopVariable = loopVariablePrefix + str(i) currPath.append(step) pathi = ".".join(currPath) shortPath = self._translate(pathi) self.prefixMap.insert(0, {"path": pathi, "variable": loopVariable}) loop = loopCode.replace("<VAR>", loopVariable).replace("<PATH>", shortPath) code = code.replace("<CODE>", loop) return code
def frum(self, fromPath, sourceVar, loopVariablePrefix): """ indexName NAME USED TO REFER TO HIGH LEVEL DOCUMENT loopVariablePrefix PREFIX FOR LOOP VARIABLES """ loopCode = "if (<PATH> != null){ for(<VAR> : <PATH>){\n<CODE>\n}}\n" self.prefixMap = [] code = "<CODE>" path = split_field(fromPath) # ADD LOCAL VARIABLES from pyLibrary.queries.es09.util import INDEX_CACHE columns = INDEX_CACHE[path[0]].columns for i, c in enumerate(columns): if c.name=="attachments": Log.debug("") if c.name.find("\\.") >= 0: self.prefixMap.insert(0, { "path": c.name, "variable": "get(" + sourceVar + ", \"" + c.name.replace("\\.", ".") + "\")" }) else: self.prefixMap.insert(0, { "path": c.name, "variable": sourceVar + ".?" + c.name }) # ADD LOOP VARIABLES currPath = [] # self.prefixMap.insert(0, {"path": path[0], "variable": path[0]}) for i, step in enumerate(path[1::]): loopVariable = loopVariablePrefix + str(i) currPath.append(step) pathi = ".".join(currPath) shortPath = self._translate(pathi) self.prefixMap.insert(0, {"path": pathi, "variable": loopVariable}) loop = loopCode.replace("<VAR>", loopVariable).replace("<PATH>", shortPath) code = code.replace("<CODE>", loop) return code