Package controlador

Class Sistema

java.lang.Object
controlador.Sistema

public class Sistema extends Object
Clase representante del controlador para el resto de la lógica del programa. El Sistema se encarga de gestionar el flujo de peticiones que realiza el resto del programa para la interacción con la información en el modelo, y los requerimientos de la vista. El resto de clases y módulos existentes en el controlador de la aplicación podrán ser únicamente accesibles por el Sistema.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static boolean
    Interfaz que hace una petición a la base de datos para añadir un nuevo Usuario a la base de datos.
    static void
    Interfaz que hace una petición a la base de datos para añadir un nuevo objeto de tipo Alumno a la base de datos.
    static boolean
    coincideContrasena(String claveUsuario, String contra)
    Interfaz que hace una petición a la base de datos para saber si una clave asociada efectiva
    static boolean
    eliminarAcademico(String claveUsuario)
    Interfaz que hace una petición a la base de datos para eliminar a un Usuario.
    static void
    eliminarEstudiante(int numeroCuenta)
    Interfaz que hace una petición a la base de datos para eliminar a un Alumno.
    static void
    escribirArchivos(boolean paraAdmin)
    Punto de acceso para escribir y actualizar la base de datos de la aplicación a partir del sistema de Archivos.
    static boolean
    existeAlumno(int numeroDeCuenta)
    Interfaz que hace una petición a la base de datos para buscar un alumno y, al mismo tiempo, comprobar si el alumno (su número de cuenta único y distinguible) ya tiene ese número de cuenta asociado.
    static boolean
    existeUsuario(String claveUsuario)
    Interfaz que hace una petición a la base de datos para saber si una clave está asociada efectivamente a un Usuario.
    static Alumno
    getAlumno(int numeroDeCuenta)
    Interfaz que hace una petición a la base de datos para obtener la instancia de Alumno asociada a un número de cuenta.
    static String
    Interfaz que hace una petición a la base de datos para obtener un apellido cualquiera de los disponibles en la base de datos.
    static Asignatura
    getAsignatura(String claveAsignatura)
    Interfaz que hace una petición a la base de datos para obtener al objeto de tipo Asignatura asociada a una valor clave de asignatura.
    static String
    Interfaz que hace una petición a la base de datos para obtener la contraseña de un Usuario.
    static String
    Interfaz que hace una petición a la base de datos para obtener una dirección de domicilio física cualquiera de las disponibles en la base de datos.
    Método que crea y devuelve la lista de pares AlumnoNumeroInscripcion necesaria para realizar el cálculo del número de inscripción.
    static String
    getNombreAcademico(String claveUsuario)
    Interfaz que hace una petición a la base de datos para obtener el nombre de un Usuario.
    static String
    Interfaz que hace una petición a la base de datos para obtener un nombre cualquiera de los disponibles en la base de datos.
    static String
    getNombreAsignatura(String claveAsignatura)
    Interfaz que hace una petición a la base de datos para obtener el nombre de una asignatura de la que se conoce su clave única.
    static int
    Interfaz que hace una petición a la base de datos para obtener el número de alumnos que hay en la base de datos.
    static Usuario
    getUsuario(String claveUsuario)
    Interfaz que hace una petición a la base de datos para obtener un objeto de tipo Usuario.
    static void
    Interfaz que hace una petición a la base de datos para imprimirla información de todos los Usuarios (académicos) dados de alta en la base de datos.
    static void
    Interfaz que hace una petición a la base de datos para imprimirla información de todos los Alumnos dados de alta en la base de datos.
    static boolean
    inicializarBaseDeDatos(boolean paraAdmin)
    Punto de acceso para inicializar la base de datos de la aplicación a partir del sistema de Archivos.
    static void
     
    static boolean
    modificarAcademico(String claveOriginalUsuario, Usuario usuarioModificado)
    Interfaz que hace una petición a la base de datos para modificar los campos de algún Usuario.
    static void
    Método añade al registro, un nuevo inicio de sesión.
    static void
    Interfaz que hace una petición a la base de datos para imprimir en pantalla el historial de registro de inicio de sesión de la aplicación.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Sistema

      public Sistema()
  • Method Details

    • inicializarBaseDeDatos

      public static boolean inicializarBaseDeDatos(boolean paraAdmin)
      Punto de acceso para inicializar la base de datos de la aplicación a partir del sistema de Archivos. Se inicializarán ciertos campos de la aplicación dependiendo si es un administrador el que está iniciando sesión, o un usuario.
      Parameters:
      paraAdmin - Indica si se requiere inicializar la base de datos con la información que requiere un administrador.
      Returns:
      true si no hubo ningún problema al inicializa base de datos, false en caso contrario.
    • inicializarUsuarios

      public static void inicializarUsuarios()
    • escribirArchivos

      public static void escribirArchivos(boolean paraAdmin)
      Punto de acceso para escribir y actualizar la base de datos de la aplicación a partir del sistema de Archivos. Se escribirán ciertos campos de la aplicación dependiendo si es un administrador el que cerró la sesión, o un usuario.
      Parameters:
      paraAdmin - Indica si se requiere inicializar la base de datos con la información que requiere un administrador.
    • getNombreAleatorio

      public static String getNombreAleatorio()
      Interfaz que hace una petición a la base de datos para obtener un nombre cualquiera de los disponibles en la base de datos.
      Returns:
      Una cadena con un nombre aleatorio.
    • getApellidoAleatorio

      public static String getApellidoAleatorio()
      Interfaz que hace una petición a la base de datos para obtener un apellido cualquiera de los disponibles en la base de datos.
      Returns:
      Una cadena con un apellido aleatorio.
    • getDomicilioAleatorio

      public static String getDomicilioAleatorio()
      Interfaz que hace una petición a la base de datos para obtener una dirección de domicilio física cualquiera de las disponibles en la base de datos.
      Returns:
      Una cade con un domicilio aleatorio.
    • existeAlumno

      public static boolean existeAlumno(int numeroDeCuenta)
      Interfaz que hace una petición a la base de datos para buscar un alumno y, al mismo tiempo, comprobar si el alumno (su número de cuenta único y distinguible) ya tiene ese número de cuenta asociado.
      Parameters:
      numeroDeCuenta - El identificador número de cuenta del Alumno que se quiere buscar.
      Returns:
      true si el Alumno ya está dado de alta, false en caso contrario.
    • getNombreAsignatura

      public static String getNombreAsignatura(String claveAsignatura)
      Interfaz que hace una petición a la base de datos para obtener el nombre de una asignatura de la que se conoce su clave única.
      Parameters:
      claveAsignatura - La clave de la asignatura que se quiere buscar.
      Returns:
      Una cadena con el nombre de la asignatura.
    • getNombreAcademico

      public static String getNombreAcademico(String claveUsuario)
      Interfaz que hace una petición a la base de datos para obtener el nombre de un Usuario.
      Parameters:
      claveUsuario - Clave identificador del Usuario cuyo nombre se quiere obtener.
      Returns:
      El nombre del Usuario si éste se mapea correctamente en la base de datos, o null en caso contrario.
    • getAlumno

      public static Alumno getAlumno(int numeroDeCuenta)
      Interfaz que hace una petición a la base de datos para obtener la instancia de Alumno asociada a un número de cuenta.
      Parameters:
      numeroDeCuenta - El número de cuenta del Alumno buscado.
      Returns:
      El Alumno asociado al número de cuenta, o null si no se encontró.
    • getNumAlumnos

      public static int getNumAlumnos()
      Interfaz que hace una petición a la base de datos para obtener el número de alumnos que hay en la base de datos.
      Returns:
      El número de alumnos que hay en la base de datos.
    • getContrasenaAcademico

      public static String getContrasenaAcademico(String claveUsuario)
      Interfaz que hace una petición a la base de datos para obtener la contraseña de un Usuario.
      Parameters:
      claveUsuario - Clave identificador del Usuario cuya contraseña se quiere obtener.
      Returns:
      La contraseña del Usuario si éste se mapea correctamente en la base de datos, o null en caso contrario.
    • getAsignatura

      public static Asignatura getAsignatura(String claveAsignatura)
      Interfaz que hace una petición a la base de datos para obtener al objeto de tipo Asignatura asociada a una valor clave de asignatura.
      Parameters:
      claveAsignatura - La clave de la Asignatura que se quiere obtener.
      Returns:
      El objeto de tipo Asignatura hallado, o null en caso de que no se haya encontrado.
    • getUsuario

      public static Usuario getUsuario(String claveUsuario)
      Interfaz que hace una petición a la base de datos para obtener un objeto de tipo Usuario.
      Parameters:
      claveUsuario - La clave del usuario que se quiere obtener.
      Returns:
      El usuario asociado a la clave..
    • existeUsuario

      public static boolean existeUsuario(String claveUsuario)
      Interfaz que hace una petición a la base de datos para saber si una clave está asociada efectivamente a un Usuario.
      Parameters:
      claveUsuario - La clave que utiliza el Usuario para iniciar sesión.
      Returns:
      true si hay un registro con esa clave, false en caso contrario.
    • coincideContrasena

      public static boolean coincideContrasena(String claveUsuario, String contra)
      Interfaz que hace una petición a la base de datos para saber si una clave asociada efectiva
      Parameters:
      claveUsuario -
      contra -
      Returns:
    • imprimirAcademicos

      public static void imprimirAcademicos()
      Interfaz que hace una petición a la base de datos para imprimirla información de todos los Usuarios (académicos) dados de alta en la base de datos.
    • imprimirAlumnos

      public static void imprimirAlumnos()
      Interfaz que hace una petición a la base de datos para imprimirla información de todos los Alumnos dados de alta en la base de datos.
    • agregarAcademico

      public static boolean agregarAcademico(Usuario usuario)
      Interfaz que hace una petición a la base de datos para añadir un nuevo Usuario a la base de datos.
      Parameters:
      usuario - El objeto de tipo Usuario que se añadirá a la base de datos.
    • modificarAcademico

      public static boolean modificarAcademico(String claveOriginalUsuario, Usuario usuarioModificado)
      Interfaz que hace una petición a la base de datos para modificar los campos de algún Usuario. El proeso de modificación funciona destruyendo la instancia que existía del Usuario, y creando una nueva.
      Parameters:
      claveOriginalUsuario - La clave que le pertenecía al Usuario que se quiere modificar.
      usuarioModificado - El objeto de tipo Usuario que reemplazará al que existía.
    • eliminarAcademico

      public static boolean eliminarAcademico(String claveUsuario)
      Interfaz que hace una petición a la base de datos para eliminar a un Usuario.
      Parameters:
      claveUsuario - La clave identificador del Usuario que se quiere borrar.
      Returns:
      true si no hubo problemas al eliminarlo, false en caso contrario.
    • eliminarEstudiante

      public static void eliminarEstudiante(int numeroCuenta)
      Interfaz que hace una petición a la base de datos para eliminar a un Alumno.
      Parameters:
      numeroCuenta - El número de cuenta del Alumno que se quiere eliminar.
    • agregarAlumnoOrdinario

      public static void agregarAlumnoOrdinario(Alumno alumno)
      Interfaz que hace una petición a la base de datos para añadir un nuevo objeto de tipo Alumno a la base de datos.
      Parameters:
      alumno - El Alumno que se quiere añadir a la base de datos.
    • verificarAccesos

      public static void verificarAccesos()
      Interfaz que hace una petición a la base de datos para imprimir en pantalla el historial de registro de inicio de sesión de la aplicación.
    • getListaAlumnoNumeroInscripcion

      public static ArrayList<AlumnoNumeroInscripcion> getListaAlumnoNumeroInscripcion()
      Método que crea y devuelve la lista de pares AlumnoNumeroInscripcion necesaria para realizar el cálculo del número de inscripción.
      Returns:
      La lista de pares AlumnoNumeroInscripcion de alumnos ordinarios.
    • registrarNuevoLogin

      public static void registrarNuevoLogin(String claveUsuario)
      Método añade al registro, un nuevo inicio de sesión.
      Parameters:
      claveUsuario - El Usuario que inició sesión.