/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package modelo;
import java.io.File;
import java.util.ArrayList;
import java.util.Observable;
/**
 * Clase Fichero Grafico, clase que crea un fichero Grafico
 * @author MW3 Software
 */
public class FicheroGrafico extends Observable {
    private String nombre;
    private String autores;
    private String fuentes;
    private File fichero;
    private String comentarios;
    private ArrayList<String> destinoRastreable = new ArrayList();
    
    /**
     * Metodo que devuelve el nombre
     * @return devuelve el nombre del Fichero Grfico
     */
    public String getNombre() {
        return nombre;
    }

    /**
     * Metodo que almacena el nombre
     * @param nombre Nuevo valor del nombre del Fichero Grafico
     */
    public void setNombre(String nombre) {
        this.nombre = nombre;
        this.setChanged();
        this.notifyObservers();
    }

    /**
     * Metodo que devuelve los autores
     * @return devuelve las fuentes del Fichero Grfico
     */
    public String getAutores() {
        return autores;
    }

    /**
     * Metodo que almacena los autores
     * @param autores Nuevo valor de los autores del Fichero Grafico
     */
    public void setAutores(String autores) {
        this.autores = autores;
        this.setChanged();
        this.notifyObservers();
    }

    /**
     * Metodo que devuelve las fuentes
     * @return devuelve las fuentes del Fichero Grfico
     */
    public String getFuentes() {
        return fuentes;
    }

    /**
     * Metodo que almacena las fuentes
     * @param fuentes Nuevo valor de las fuentes del Fichero Grafico
     */
    public void setFuentes(String fuentes) {
        this.fuentes = fuentes;
        this.setChanged();
        this.notifyObservers();
    }

    /**
     * Metodo que devuelve la Ruta
     * @return devuelve la Ruta del Fichero Grfico
     */
    public File getFichero() {
        return fichero;
    }

    /**
     * Metodo que almacena la ruta
     * @param ruta Nuevo valor de ruta del Fichero Grafico
     */
    public void setFichero(File fichero) {
        this.fichero = fichero;
        this.setChanged();
        this.notifyObservers();
    }

    /**
     * Metodo que devuelve el comentario
     * @return devuelve el comentario del Fichero Grfico
     */
    public String getComentarios() {
        return comentarios;
    }

    /**
     * Metodo que almacena el comentario
     * @param comentarios Nuevo valor de comentario del Fichero Grafico
     */
    public void setComentarios(String comentarios) {
        this.comentarios = comentarios;
        this.setChanged();
        this.notifyObservers();
    }

    /**
     * Metodo que devuelve la lista Rastreable
     * @return devuelve la lista Rastreable del Fichero Grfico
     */
    public ArrayList<String> getDestinoRastreable() {
        return destinoRastreable;
    }

    /**
     * Metodo que almacena la Lista de Elementos Rastreables
     * @param destinoRastreable Nuevo valor de la lista Rastreable del Fichero Grafico
     */
    public void setDestinoRastreable(ArrayList<String> destinoRastreable) {
        this.destinoRastreable = destinoRastreable;
        this.setChanged();
        this.notifyObservers();
    }

}
