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

package modelo;

import java.util.ArrayList;
import java.util.Observable;

/**
 * Clase Rastreabilidad, clase para crear Matriz de rastreabilidad
 * @author MW3 Software
 */
public class Rastreabilidad extends Observable{
    //Atributos típicos
    /**
     * Nombre de la Matriz de rastreabilidad
     */
    private String Nombre;
    /**
     * Autores que ha creado la Matriz de rastreabilidad
     */
    private String Autores;
    /**
     * Fuentes de informacion
     */
    private String Fuentes;
    /**
     * Comentarios de la Matriz de rastreabilidad
     */
    private String Comentario;


    //ArrayLists elementos filas y columnas
    /**
     * Filas que componen de la Matriz de rastreabilidad
     */
    private ArrayList<String> Filas=new ArrayList();
    /**
     * Columnas que componen de la Matriz de rastreabilidad
     */
    private ArrayList<String> Columnas=new ArrayList();

    /**
     * Metodo que devuelve el nombre
     * @return devuelve el nombre de la Matriz
     */
    public String getNombre() {
        return Nombre;
    }

    /**
     * Metodo que almacena el nombtr
     * @param Nombre nuevo valor de nombre de la Matriz
     */
    public void setNombre(String Nombre) {
        this.Nombre = Nombre;
        //Notificamos que ha habido un cambio
         this.setChanged();
         this.notifyObservers();
    }

    /**
     * Metodo que devuelve los autores
     * @return devuelve los autores de la Matriz
     */
    public String getAutores() {
        return Autores;
    }

    /**
     * Metodo que almacena los autores
     * @param Autores nuevo valor de Autores de la Matriz
     */
    public void setAutores(String Autores) {
        this.Autores = Autores;
        //Notificamos que ha habido un cambio
         this.setChanged();
         this.notifyObservers();
    }

    /**
     * Metodo que devuelve las funtes
     * @return devuelve las fuentes de la Matriz
     */
    public String getFuentes() {
        return Fuentes;
    }

    /**
     * Metodo que almacena las fuentes
     * @param Fuentes nuevo valor de Fuentes de la Matriz
     */
    public void setFuentes(String Fuentes) {
        this.Fuentes = Fuentes;
        //Notificamos que ha habido un cambio
         this.setChanged();
         this.notifyObservers();
    }

    /**
     * Metodo que devuelve el comentario
     * @return devuelve el comentario de la Matriz
     */
    public String getComentario() {
        return Comentario;
    }

    /**
     * Metodo que almacena el comentario
     * @param Comentario nuevo valor de Comentario de la Matriz
     */
    public void setComentario(String Comentario) {
        this.Comentario = Comentario;
        //Notificamos que ha habido un cambio
         this.setChanged();
         this.notifyObservers();
    }

    /**
     * Metodo que devuelve las filas de la matriz
     * @return devuelve las filas de la Matriz
     */
    public ArrayList<String> getFilas() {
        return Filas;
    }

    /**
     * Metodo que almacena las filas de la matriz
     * @param Filas nuevo valor de Filas de la Matriz
     */
    public void setFilas(ArrayList<String> Filas) {
        this.Filas = Filas;
        //Notificamos que ha habido un cambio
         this.setChanged();
         this.notifyObservers();
    }

    /**
     * Metodo que devuelve las Columnas de la matriz
     * @return devuelve las columnas de la Matriz
     */
    public ArrayList<String> getColumnas() {
        return Columnas;
    }

    /**
     * Metodo que almacena las columnas de la matriz
     * @param Columnas nuevo valor de Columnas de la Matriz
     */
    public void setColumnas(ArrayList<String> Columnas) {
        this.Columnas = Columnas;
        //Notificamos que ha habido un cambio
         this.setChanged();
         this.notifyObservers();
    }
}
