#!/usr/bin/env python # -*- coding: utf-8 -*- # #Copyright (C) 2009 RaNaN # #This program is free software; you can redistribute it and/or modify #it under the terms of the GNU General Public License as published by #the Free Software Foundation; either version 3 of the License, #or (at your option) any later version. # #This program is distributed in the hope that it will be useful, #but WITHOUT ANY WARRANTY; without even the implied warranty of #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. #See the GNU General Public License for more details. # #You should have received a copy of the GNU General Public License # along with this program; if not, see . # ### LIST_VERSION = 1 import cPickle from Py_Load_File import PyLoadFile class File_List(object): def __init__(self): self.version = LIST_VERSION self.files = [] self.id = 0 def set_core(self, core): self.core = core def new_pyfile(self) pyfile = PyLoadFile(self, url) pyfile.download_folder = self.core.config['download_folder'] pyfile.id = self.id self.id += 1 return pyfile def append(self, url): self.links.append(url) def save(self): output = open('links.pkl', 'wb') cPickle.dump(self, output, -1) def load(core): try: pkl_file = open('links.pkl', 'rb') obj = cPickle.load(pkl_file) except: obj = File_List() if obj.version < LIST_VERSION: obj = File_List() obj.set_core(core) return obj