Ejemplo n.º 1
0
def convert_xml_to_sql(filename):
    config = {'host': 'localhost', 
              'port': 3306,
              'user': '******',
              'passwd': 'vistrailspwd',
              'db': 'vistrails'}

    try:
        vistrail = io.open_vistrail_from_xml(filename)
        dbConnection = io.open_db_connection(config)

        print dbConnection.get_server_info()
        print dbConnection.get_host_info()
        print dbConnection.stat()
        print str(dbConnection)

        io.save_vistrail_to_db(vistrail, dbConnection)
        io.close_db_connection(dbConnection)
        print 'db_id: ', vistrail.db_id

    except Exception, e:
        print e
Ejemplo n.º 2
0
def convert_xml_to_sql(filename):
    config = {
        'host': 'localhost',
        'port': 3306,
        'user': '******',
        'passwd': 'vistrailspwd',
        'db': 'vistrails'
    }

    try:
        vistrail = io.open_vistrail_from_xml(filename)
        dbConnection = io.open_db_connection(config)

        print dbConnection.get_server_info()
        print dbConnection.get_host_info()
        print dbConnection.stat()
        print str(dbConnection)

        io.save_vistrail_to_db(vistrail, dbConnection)
        io.close_db_connection(dbConnection)
        print 'db_id: ', vistrail.db_id

    except Exception, e:
        print e
Ejemplo n.º 3
0
def new_open_vistrail_from_zip_xml_old(filename):
    """open_vistrail_from_zip_xml(filename) -> Vistrail
    Open a vistrail from a zip compressed format.
    It expects that the file inside archive has name vistrail

    """
    try:
        zf = zipfile.ZipFile(filename, 'r')
    except:
        raise Exception('Error opening file!\nThe file may be invalid or you\nmay have insufficient permissions.')
    
    getBuilderWindow().startProgress('Opening...')
    

    #######################################################
    #Audio and Video
    sourceZip = zipfile.ZipFile(filename)
    tmp_audio_dir = tempfile.mkdtemp(prefix="VTAudio")
    audio_dir = os.path.join(tmp_audio_dir)
    tmp_video_dir = tempfile.mkdtemp(prefix="VTVideo")
    video_dir = os.path.join(tmp_video_dir)
    

    for name in sourceZip.namelist():
        if name.find('.mp3') != -1 or name.find('.wav') != -1 or name.find('.ogg') != -1 or \
name.find('.mpc') != -1 or name.find('.flac') != -1 or name.find('.au') != -1 or \
name.find('.raw') != -1 or name.find('.dct') != -1 or name.find('.aac') != -1 or \
name.find('.m4a') != -1 or name.find('.wma') != -1 or \
name.find('.amr') != -1 or name.find('.awb'):
            if name.startswith('audio/VTAudio') == True:
                sourceZip.extract(name, tmp_audio_dir)
            
        if name.find('.3g2') != -1 or name.find('.3gp') != -1 or name.find('.amv') != -1 or \
name.find('.asf') != -1 or name.find('.asx') != -1 or name.find('.avi') != -1 or \
name.find('.wmv') != -1 or name.find('.vob') != -1 or name.find('.wwf') != -1 or \
name.find('.rm') != -1 or name.find('.mpg') != -1 or name.find('.mov') != -1 or \
name.find('.flv') != -1 or name.find('.mp4'):
            if name.startswith('video/VTVideo') == True:
                sourceZip.extract(name, tmp_video_dir)
    
    
    # Unzip vistrail
    (file_, xmlfname) = tempfile.mkstemp(suffix='.xml')
    os.close(file_)
    file(xmlfname, 'w').write(zf.read('vistrail'))
    vistrail = open_vistrail_from_xml(xmlfname)
    vistrail.db_audio_dir = os.path.join(tmp_audio_dir)
    vistrail.db_video_dir = os.path.join(tmp_video_dir)
    os.unlink(xmlfname)

    getBuilderWindow().updateProgress(0.3)
    
    # Unzip data file
    (bfile_, binfname) = tempfile.mkstemp()
    os.close(bfile_)
    file(binfname, 'wb').write(zf.read('data'))
    vistrail.binary_data = array.array('c')
    bsize = os.path.getsize(binfname)
    vt_bin_file = open(binfname, 'rb')
    vistrail.binary_data.fromfile(vt_bin_file, bsize)
    vt_bin_file.close()
    os.unlink(binfname)

    getBuilderWindow().updateProgress(0.7)

    # Unzip save data
    namelist = zf.namelist()
    vistrail.saved_files = []
    for name in namelist:
        if name != "vistrail" and name != "data" and \
                not name.startswith("audio" + os.sep) and not name.startswith("video" + os.sep) and not name.startswith("audio") and not name.startswith("video"):
            # Filename has a '.b' or '.a' appended to it so we know
            # how to write it.  In Python 2.6 or later, we should just use
            # zipFile.extractAll instead of zipFile.read
            (basename,ext) = os.path.splitext(name)
            sfilename = core.system.temporary_save_file(os.path.basename(basename))
            print "sfilename, ", sfilename
            print "name, ", name
            if ext == ".b":
                file(sfilename, 'wb').write(zf.read(name))
            else:
                file(sfilename, 'w').write(zf.read(name))
            vistrail.saved_files.append((sfilename, ext))

    getBuilderWindow().endProgress()

    temp_audio_Dir = vistrail.db_audio_dir
    temp_video_Dir = vistrail.db_video_dir
    
    return vistrail