Class NewsService

java.lang.Object
com.modulink.Model.News.NewsService

@Service public class NewsService extends Object
Service Layer per la gestione della logica di business relativa alle Notizie.

Questa classe funge da intermediario tra il controller e il repository NewsRepository, esponendo metodi transazionali per la creazione, lettura e cancellazione delle news.

Since:
1.0.0
Version:
1.1.2
Author:
Modulink Team
  • Field Details

    • newsRepository

      private final NewsRepository newsRepository
      Il repository iniettato per l'accesso ai dati.
      Since:
      1.0.0
  • Constructor Details

    • NewsService

      public NewsService(NewsRepository newsRepository)
      Costruttore per Dependency Injection.
      Parameters:
      newsRepository - L'istanza del repository.
      Since:
      1.0.0
  • Method Details

    • findAll

      public List<NewsEntity> findAll()
      Recupera l'elenco completo di tutte le notizie presenti nel sistema.

      Utilizza il metodo standard ListCrudRepository.findAll(). Non applica paginazione, quindi attenzione a potenziali problemi di performance con dataset molto ampi.

      Returns:
      Lista di tutte le entità NewsEntity.
      Since:
      1.0.0
    • save

      @Transactional public void save(NewsEntity news)
      Salva o aggiorna una notizia nel database.

      L'operazione è annotata come Transactional (di default readOnly=false) per garantire l'atomicità del commit sul database. Se l'entità possiede già un ID esistente, verrà eseguito un update (merge), altrimenti un insert (persist).

      Parameters:
      news - L'entità notizia da persistere.
      Since:
      1.0.0
    • delete

      @Transactional public void delete(int id)
      Elimina una notizia dal sistema dato il suo ID.

      Operazione transazionale distruttiva (Hard Delete).

      Parameters:
      id - L'identificativo univoco della notizia da rimuovere.
      Since:
      1.0.0