Interface DroneRepository

All Known Implementing Classes:
MySqlDroneRepository

public interface DroneRepository
Puerto de salida — repositorio de drones. Define el contrato que la capa de aplicación usa para persistir y consultar drones, sin conocer la tecnología de almacenamiento (MySQL, memoria, etc.). El adaptador de salida lo implementa.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Actualiza los datos de un dron existente.
    Busca un dron por su identificador.
    Retorna todos los drones registrados.
    void
    Elimina el dron con el identificador dado.
    void
    guardar(Drone drone)
    Persiste un nuevo dron.
  • Method Details

    • guardar

      void guardar(Drone drone) throws Exception
      Persiste un nuevo dron.
      Parameters:
      drone - dron a guardar (concreto: de agricultura o vigilancia)
      Throws:
      Exception - si ocurre un error al guardar o el id ya existe
    • buscarPorId

      Drone buscarPorId(String id) throws Exception
      Busca un dron por su identificador.
      Parameters:
      id - identificador del dron
      Returns:
      dron encontrado, o null si no existe
      Throws:
      Exception - si ocurre un error durante la consulta
    • buscarTodos

      List<Drone> buscarTodos() throws Exception
      Retorna todos los drones registrados.
      Returns:
      lista de drones, vacía si no hay registros
      Throws:
      Exception - si ocurre un error durante la consulta
    • actualizar

      void actualizar(Drone drone) throws Exception
      Actualiza los datos de un dron existente.
      Parameters:
      drone - dron con los datos actualizados
      Throws:
      Exception - si el dron no existe o ocurre un error al actualizar
    • eliminar

      void eliminar(String id) throws Exception
      Elimina el dron con el identificador dado.
      Parameters:
      id - identificador del dron a eliminar
      Throws:
      Exception - si el dron no existe o ocurre un error al eliminar