include("import") func doOpen(_data) need_ftplib() println(conn, ' = ftplib.FTP()') println(conn, '.connect(', Host, (isndef(Port)?','&&Port:''), ')') if (isndef(Passive)) println(conn, '.set_pasv(', Passive, ')') end event(onConnect, conn && '.getwelcome()') end func doClose(_data) // TODO println(conn, '.quit()') end func doReadTextFile(_data) // TODO println('try:') block.inclvl() println(conn, '.retrlines("RETR ', RemoteName, ', lambda x: ', LocalName, '.write(x+"\n")', (isndef(RestPos)?'rest='&&RestPos:''), ')') block.declvl() println('except:') block.inclvl() println(conn, '.retrlines("RETR ', RemoteName, ', lambda x: ', LocalName, '.write(x+"\n"))') block.declvl() event(onRead) end func doWriteTextFile(_data) // TODO println(conn, '.storlines("STOR ', RemoteName, '", ', LocalName, ')') event(onWrite) end func doReadBinFile(_data) // TODO println('try:') block.inclvl() println(conn, '.retrbinary("RETR ', RemoteName, ', lambda x: ', LocalName, '.write(x)', (isndef(RestPos)?'rest='&&RestPos:''), ')') block.declvl() println('except:') block.inclvl() println(conn, '.retrbinary("RETR ', RemoteName, ', lambda x: ', LocalName, '.write(x))') block.declvl() event(onRead) end func doWriteBinFile(_data) // TODO println(conn, '.storbinary("STOR ', RemoteName, '", ', LocalName, ')') event(onWrite) end func doDelete(_data) // TODO println(conn, '.delete(', RemoteName, ')') end func doCreateDirectory(_data) // TODO println(conn, '.mkd(', RemoteName, ')') end func doDirectory(_data) println(conn, '.cwd(', _data, ')') end