Define a range of values for a ParameterSpace based on the lines of a text file. An instance of this class is used as a dimension in a ParameterSpace definition.The file name must either refer to a file that is readable from the server and resources (on a shared file system) or must be a DataGrid file URL.
FileRange(String filename): Constructs a FileRange using the supplied filename. The file must be readable.
Parameters: The userenv - true to set user environment variables.
Define the line delimiter to separate lines. Defaults to line feed.
Parameters: delimiter - Character to use for delimiting lines.
Defines whether to ignore blank lines or not. Default is to not ignore blank lines.
Parameters: delimiter - Character to use for delimiting lines.
__delitem__, __delslice__, __eq__, __finditem__, __finditem__, __ge__, __getitem__, __getslice__, __gt__, __le__, __lt__, __ne__, __nonzero__, __setitem__, __setitem__, __setslice__, __tojava__, classDictInit, del, delRange, fastSequence, fixindex, get, getslice, getStart, getStep, getStop, isMappingType, isNumberType, repeat, set, setslice, sliceLength
__abs__, __add__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __cmp__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delattr__, __delitem__, __delslice__, __dir__, __div__, __divmod__, __findattr__, __findattr__, __finditem__, __float__, __getattr__, __getattr__, __getitem__, __getslice__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ilshift__, __imod__, __imul__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __ixor__, __len__, __long__, __lshift__, __mod__, __mul__, __neg__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __rand__, __rdiv__, __rdivmod__, __repr__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rxor__, __setattr__, __setattr__, __setitem__, __setslice__, __str__, __sub__, __xor__, _add, _and, _callextra, _cmp, _div, _divmod, _dodel, _doget, _doget, _doset, _eq, _ge, _gt, _in, _is, _isnot, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _xor, addKeys, equals, getPyClass, hashCode, impAttr, invoke, invoke, invoke, invoke, invoke, isCallable, isSequenceType, safeRepr
Example to distribute each line of a text file residing on a shared filesystem to a joblet:
class myjob(Job): def job_started_event(self): fr = FileRange("/mytests/testlist") fr.setSkipBlankLines(True) parameterSpace = ParameterSpace() parameterSpace.appendDimension("testlist",fr) # Setting JobletSize to 1 creates one Joblet per line parameterSpace.setMaxJobletSize(1) self.schedule(myJoblet,parameterSpace)
In the example above, only a single dimension is defined. So each line of the source text file makes up a single row in the ParameterSpace.
class myJoblet(Joblet): def joblet_started_event(self): parameterSpace = self.getParameterSpace() while parameterSpace.hasNext(): row = parameterSpace.next() element = row["testlist"] print "element=%s" % (element)
Javadoc: FileRange