QGIS/python/plugins/sextante/outputs/OutputFactory.py
2012-09-15 18:30:32 +03:00

20 lines
835 B
Python

from sextante.outputs.OutputHTML import OutputHTML
from sextante.outputs.OutputRaster import OutputRaster
from sextante.outputs.OutputTable import OutputTable
from sextante.outputs.OutputVector import OutputVector
from sextante.outputs.OutputNumber import OutputNumber
from sextante.outputs.OutputFile import OutputFile
class OutputFactory():
@staticmethod
def getFromString(s):
classes = [OutputRaster, OutputVector, OutputTable, OutputHTML, OutputNumber, OutputFile]
for clazz in classes:
if s.startswith(clazz().outputTypeName()):
tokens = s[len(clazz().outputTypeName())+1:].split("|")
if len(tokens) == 2:
return clazz(tokens[0], tokens[1])
else:
return clazz(tokens[0], tokens[1], tokens[2]==str(True))