'Imports the datasource from the object to the database.
Metrics and columns and datasource will be overrided if exists.
This function can be used to import/export dashboards between multiple
superset instances. Audit metadata isn\'t copies over.'

@classmethod
def import_obj(cls, i_datasource, import_time=None):

    def lookup_sqlatable(table):
        return db.session.query(SqlaTable).join(Database).filter((SqlaTable.table_name == table.table_name), (SqlaTable.schema == table.schema), (Database.id == table.database_id)).first()
    def lookup_database(table):
        return db.session.query(Database).filter_by(database_name=table.params_dict['database_name']).one()
    return import_util.import_datasource(db.session, i_datasource, lookup_database, lookup_sqlatable, import_time)
