amigu.util.folder
index
/home/fernando/amigu-0.7.3/amigu/util/folder.py

# -*- coding: utf-8 -*-
# Este módulo agrupa rutinas para el tratamiento de archivos y carpetas.
# Ofrece la funcionalidad de realizar backup's de archivos y restaurarlos posteriormente.
# Permite le uso de objetos de tipo 'folder' para simplificar y agilizar
# el manejo de las carpetas

 
Modules
       
os
re
shutil

 
Classes
       
amigu.apps.base.application
copier
folder

 
class copier(amigu.apps.base.application)
    Clase para el manejo de importación de archivos
 
  Methods defined here:
do(self)
Realiza el proceso de importación
initialize(self)
Inicializa los parametros específicos de la aplicación
set_destination(self, dest)
Establece el destino de la copia.
 
Argumentos de entrada:
dest -> destino de la copia, puede ser una ruta o un objeto de tipo 'folder'

Methods inherited from amigu.apps.base.application:
__init__(self, user, option=None)
Constructor de la clase.
 
Argumentos de entrada:
user -- objeto de tipo Generic_usr
option -- opción especifica de la aplicación que implemente la clase (default None)
run(self, model=None, iter=None)
Ejecuta la tarea y controla su resultado.
 
Argumentos de entrada:
model -- objeto de tipo gtk.TreeModel obtenido del arbol de opciones
iter -- objeto de tipo gtk.TreeIter obtenido del arbol de opciones
update_progress(self, value=0, delta=0)
Actualiza la barra de progreso asociada a la tarea en con un 
valor concreto o con un incremento relativo. Sólo válido para 
la interfaz gráfica de Amigu
 
Argumentos de entrada:
value -- nuevo valor de la barra de progreso (default 0)
delta -- nuevo incremento de la barra de progreso (default 0)

 
class folder
    Clase para el manejo de carpetas y archivos
 
  Methods defined here:
__init__(self, path, create=True)
Constructor de la clase.
 
Argumentos de entrada:
path -> ruta de la carpeta
create -> indica si se debe crear la carpeta (default True)
copy(self, destino, extension=None, convert=True, exclude=['.lnk'], function=None, delta=0)
Copia solo los archivos de la ruta origen que tienen la misma 
extension que la especificada en la lista de 'extensiones'
 
Argumentos de entrada:
destino -> destino de la copia
extension -> lista con las extensiones de los ficheros a copiar (default None)
convert -> indica se debe convertir ficheros a equivalentes libres (defualt True)
exclude -> lista con las extensiones de los ficheros excluidos (default ['.lnk'])
function -> función encargada del indicar el progreso de la copia (default None)
delta -> incremento de progreso por cada archivo copiado (default 0)
count(self, path, dirs, files)
Devuelve el número de archivos y carpetas de forma recursiva
count_dirs(self)
Devuelve el número de carpetas que contiene la carpeta
count_files(self)
Devuelve el número de archivos que contiene la carpeta
create_folder(self, path)
Crea la carpeta
 
Argumentos de entrada:
path -> ruta de la carpeta a crear
create_subfolder(self, subfolder)
Crea una subcarpeta en la ruta del objeto
 
Argumentos de entrada:
subfolder -> nombre de la subcarpeta a crear
error(self, e)
Almacena los errores en tiempo de ejecución
get_free_space(self)
Devuelve el espacio libre en la carpeta
get_info(self)
Devuelve información con el número de archivos y carpetas y el tamaño del objeto
get_name(self)
Devuelve el nombre de la carpeta
get_path(self)
Devuelve la ruta del objeto
get_size(self)
Devuelve el tamaño de la carpeta
get_subfolders(self)
Devuelve una lista con las subcarpetas
is_readable(self)
Devuelve si tiene permisos de lectura sobre la carpeta
is_writable(self)
Devuelve si tiene permisos de escritura sobre la carpeta
search_by_ext(self, extension)
Devuelve una lista de archivos que cumplen con la extension dada
 
Argumentos de entrada:
extension -> extensión para el filtrado de los ficheros

Data and other attributes defined here:
__DIR_BACKUP__ = '/tmp/migration-assistant'
__DIR_MUSIC__ = '~/Music'
__DIR_PICTURES__ = '~/Pictures'
__DIR_VIDEO__ = '~/Video'
audio = ['.wma', '.asf', '.wav', '.mp2', '.mp3', '.aac', '.m4a', '.ogg', '.mp4', '.mid', '.midi', '.dts', '.ac3']
calculo = ['.sxc', '.stc', '.dif', '.dbf', '.xls', '.xlw', '.xlt', '.sdc', '.vor', '.slk', '.csv', '.txt', '.html', '.htm']
compresion = ['.zip', '.rar', '.r*', '.7z', '.cab', '.tar', '.gz', '.bz', '.bz2', '.ace', '.arj', '.z', '.cpio', '.rpm', '.deb', '.lzma', '.rz', '.arc', '.alz', '.arj', ...]
document_files = ['.sxv', '.doc', '.xml', '.rtf', '.sdw']
edonkey = ['.dat', '.part', '.part.met', '.met']
ejecutable = ['.exe']
pictures = ['.jpg', '.jpeg', '.png', '.bmp', '.gif', '.pdf', '.ico', '.tif', '.tiff']
prefolders = {'Desktop': 'Escritorio', 'Documents': 'Documentos', 'Downloads': 'Descargas', 'Music': 'Musica', 'Pictures': 'Imagenes', 'Videos': 'Videos'}
presentacion = ['.sxi', '.sti', '.ppt', '.pps', '.pot', '.sxd', '.sda', '.sdd', '.vor', '.pdf']
presentation_files = ['.pot', '.ppt']
spread_files = ['.xls', '.xlt', '.sxc']
texto = ['.sxv', '.stw', '.doc', '.rtf', '.sdw', '.var', '.txt', '.html', '.htm', '.pdf']
video = ['.avi', '.mpg', '.mpeg', '.divx', '.mov', '.mp4', '.vob', '.ifo', '.bup', '.wmv', '.3gp', '.ogm', '.mkv', '.rm']

 
Functions
       
backup(file)
Crea una copia de respaldo del archivo que se le indica.
Devuelve el nombre del fichero creado.
 
Argumentos de entrada:
file -> ruta del archivo
error(e)
Error handler
odf_converter(file, format='pdf')
Convierte el fichero recibido a formato compatible con OpenOffice.org
 
Argumentos de entrada:
file -> ruta del fichero
format -> tipo de formato de salida (default "pdf")
progress(p)
Show the progress
restore_backup(backup)
Restaura la copia de respaldo del archivo que se le indica
 
Argumentos de entrada:
backup -> ruta de la copia de respaldo
warning(w)
Show warnings