Class RestClient

java.lang.Object
com.gruppox.pissir23.restclient.RestClient

public class RestClient extends Object
Classe utile per richiamare le api dalla parte del frontend. *@author Andrea Colaci, Nicola Maraschi, Luca Monteleone, Morgan Scalcon
  • Constructor Details

    • RestClient

      public RestClient()
  • Method Details

    • getRifornimenti

      public static List<RichiestaResponse> getRifornimenti(int id)
      Metodo che va prendere le richieste gestite da una certa azienda idrica (Usato dall'azienda idrica)
      Parameters:
      id - codice della azienda idrica
      Returns:
      responseList lista delle richieste gestite da una certa azienda idrica
    • getRichieste

      public static List<RichiestaResponse> getRichieste(int id)
      Metodo che va prendere le richieste fatte da una certa azienda agricola (Usato dall'azienda agricola)
      Parameters:
      id - codice della azienda agricola
      Returns:
      responseList lista delle richieste fatte da una certa azienda agricola
    • sendRichiesta

      public static Boolean sendRichiesta(int quantity, int idAgricola, int idIdrica)
      Metodo che tramite l'id della azienda agricola si chiede una certa quantitò d'acqua ad una certa azienda idrica
      Parameters:
      quantity - indica la quantità d'acqua richiesta
      idAgricola - indica il codice della azienda agricola che richiede l'acqua
      idIdrica - indica il codice della azienda idrica che fornisce l'acqua
      Returns:
      result ritorna vero se la richiesta è stata accettata altrimenti falso
    • getAziendeIdriche

      public static List<AziendeIdricheResponse> getAziendeIdriche()
      Metodo per richiedere tutte le aziende Idriche che possono fornire acqua
      Returns:
      responseList lista delle aziende Idriche
    • getAziendeAgricole

      public static List<AziendeAgricoleResponse> getAziendeAgricole()
      Metodo che ritorna tutte le aziende agricole registrate alla applicazione
      Returns:
      resposeList ritorna tutte le aziende agricole
    • getCampi

      public static List<CampiResponse> getCampi(int id)
      Metodo che ritorna tutti i campi di una certa azienda agricola
      Parameters:
      id - della azienda agricola che fa la richiesta
      Returns:
      responseList lista dei campi che appartengono a quella azienda
    • sendCreaCampo

      public static Boolean sendCreaCampo(String tipoColtivazione, int temperaturaTarget, int umiditaTarget, int dimensione, String tipoIrrigazione, int idAziendaCampo, LocalTime orarioIrrigazione, int esigenzeAcqua, String nomeCampo)
      Metodo che aggiunge un nuovo campo ad una certa azienda agricola
      Parameters:
      tipoColtivazione - mi indica il tipo di coltivazione effettuata in questo campo
      temperaturaTarget - mi indica la temperatura ideale che si vorrebbe avere nel campo
      umiditaTarget - mi indica la umidità ideale che si vorrebbe avere nel campo
      dimensione - mi indica la dimensione in metri quadri del campo
      tipoIrrigazione - mi indica il tipo di irrigazione effettuata nel campo
      idAziendaCampo - id della azienda che possiede il campo
      orarioIrrigazione - mi indica l'orario di irrigazione automatica effettuata nel campo
      esigenzeAcqua - mi indica le eseigenze d'acqua giornaliere per il campo
      nomeCampo - mi indica il nome con cui è identificato il campo
      Returns:
      result ritorna vero se il campo è stato aggiunto altrimenti falso
    • modificaCampo

      public static Boolean modificaCampo(int IdCampo, String tipoColtivazione, Integer temperaturaTarget, Integer umiditaTarget, Integer dimensione, String tipoIrrigazione, Integer idAziendaCampo, LocalTime orarioIrrigazione, Integer esigenzeAcqua, String nomeCampo)
      Metodo utilizzato per effettuare una modifica delle caratteristiche del campo
      Parameters:
      IdCampo - codice identificativo del campo
      tipoColtivazione - specifica la coltivazione effettuata in questo campo
      temperaturaTarget - temperatura che il campo dovrebbe mantenere
      umiditaTarget - umidità che il campo dovrebbe mantenere
      dimensione - indica la dimensione del campo
      tipoIrrigazione - indica il tipo di irrigazione effettuata nel campo
      idAziendaCampo - indica il codice della azienda a cui appartiene il campo
      orarioIrrigazione - indica l'orario di irrigazione
      esigenzeAcqua - indica l'esigenza d'acqua richiesta dal campo per mantenere la temperatura e l'umidità ideale
      nomeCampo - indica il nome campo
      Returns:
      true se la modifica è stata effettuata false altrimenti
    • getTipiIrrigazione

      public static List<String> getTipiIrrigazione()
      Metodo che ritorna i tipi di irrigazione disponibili
      Returns:
      responseList lista dei possibili tipi di irrigazione che si possono effettuare
    • getTipiColtivazione

      public static List<String> getTipiColtivazione()
      Metodo che ritorna i tipi di coltivazione che si possono effettuare
      Returns:
      responseList lista dei possibili tipi di coltivazione che si possono effettuare
    • getInfoSensori

      public static List<SensoriResponse> getInfoSensori(int idCampo)
      Ottiene le informazioni dei sensori associati a un campo specifico.
      Parameters:
      idCampo - codice del campo per il quale si vogliono ottenere le informazioni dei sensori.
      Returns:
      responseList una lista contenente i sensori associati al campo.
    • nuovoSensori

      public static boolean nuovoSensori(int idCampo, String tipo, String nome)
      Metodo che crea un nuovo sensore associato ad un certo campo
      Parameters:
      idCampo - codice del campo in cui si aggiunge un nuovo sensore
      tipo - indica il tipo del sensore
      nome - indica il nome del sensore
      Returns:
      true se il sensore è stato aggiunto altrimenti false
    • eliminaSensori

      public static boolean eliminaSensori(String idSensore)
      Metodo che elimina un sensore
      Parameters:
      idSensore - codice del sensore che si vuole eliminare
      Returns:
      true se il sensore è stato eliminato altrimenti false
    • getTipiSensori

      public static List<String> getTipiSensori()
      Metodo che per ottenere i tipi di sensori
      Returns:
      lista di stringe con i tipi di sensori
    • creaAttuatore

      public static Boolean creaAttuatore(int idCampo, String tipo, String nome)
      Metodo che aggiunge attuatore
      Parameters:
      idCampo - codice identificativo in cui vogliamo aggiungere un attuatore
      tipo - indica il tipo dell'attuatore che vogliamo aggiungere
      nome - indica il nome che si dà a questo attuatore
      Returns:
      true se l'attuatore è stato aggiunto altrimenti false
    • getAttuatori

      public static List<AttuatoriResponse> getAttuatori(int idCampo)
      Metodo che ritorna tutti gli attuatori di un certo campo
      Parameters:
      idCampo - codice del campo che ha fatto la richiesta
      Returns:
      responseList lista degli attuatori del campo
    • eliminaAttuatore

      public static Boolean eliminaAttuatore(String idAttuatore)
      Metodo che elimina un attuatore
      Parameters:
      idAttuatore - codice identificativo dell'attuatore che si vuole eliminare
      Returns:
      true se l'attuatore è stato aggiunto altrimenti false
    • getTipiAttuatori

      public static List<String> getTipiAttuatori()
      Metodo che ritorna la lista dei tipi di attuatori disponibili
      Returns:
      lista dei tipi di attuatori disponibili
    • eliminaCampo

      public static Boolean eliminaCampo(int idCampo)
      Metodo che elimina un campo
      Parameters:
      idCampo - codice del campo che si vuole eliminare
      Returns:
      true se il campo è stato eliminato altrimenti false
    • modificaIdrica

      public static boolean modificaIdrica(int idAziendaIdrica, Integer aggiuntiAcqua, Integer limiteGiornalieroGlobale, Integer limiteGiornalieroAzienda, Float modificaPrezzo, String nome)
      Metodo che modifica gli attributi del azienda idrica
      Parameters:
      idAziendaIdrica - codice dell'azienda idrica
      aggiuntiAcqua - quantita d'acqua da aggiungere
      limiteGiornalieroGlobale - limite gioraliero del acqua per tutte le aziende
      limiteGiornalieroAzienda - limite gioraliero del acqua per singola azienda
      modificaPrezzo - prezzo del acqua
      nome - nome del azienda
      Returns:
      true se l'azienda è stata modificata altrimenti false
    • modificaAgricola

      public static boolean modificaAgricola(int idAzienda, Integer aggiuntiAcqua, String nome)
      Metodo che modifica gli attributi del azienda idrica
      Parameters:
      idAzienda - codice dell'azienda
      aggiuntiAcqua - quantita d'acqua da aggiungere
      nome - nome del azienda
      Returns:
      true se l'azienda è stata modificata altrimenti false
    • modificaRichiesta

      public static boolean modificaRichiesta(int idRichiesta, Integer stato, Integer quantita, String data, Integer idAziendaIdrica, Integer idAziendaAgricolaRichiedente)
      Metodo che modifica il tipo di richiesta effettuata
      Parameters:
      idRichiesta - identificativo della richiesta
      stato - indica lo stato attuale della richiesta
      quantita - indica la quantità indicata nella richiesta
      data - indica la data della richiesta
      idAziendaIdrica - identificativo della azienda idrica
      idAziendaAgricolaRichiedente - identificativo della azienda agricola
      Returns:
      true se la modifica è stata effettuata false altrimenti
    • modificaAttuatore

      public static boolean modificaAttuatore(int idCampo, String tipo, String nome)
      Metodo che modifica le caratteristiche di un attuatore
      Parameters:
      idCampo - indica l'id del campo in cui è presente l'attuatore
      tipo - indica il tipo dell'attuatore
      nome - indica il nome dell'attuatore
      Returns:
      true se la modifica è stata effettuata false altrimenti
    • modificaSensore

      public static boolean modificaSensore(int idCampo, String tipo, String nome)
      Metodo che modifica le caratteristiche di un sensore
      Parameters:
      idCampo - identificativo del campo
      tipo - indica il tipo del sensore
      nome - indica il nome del sensore
      Returns:
      true se la modifica è stata effettuata false altrimenti
    • approvaSensore

      public static boolean approvaSensore(int idAzienda, int idCampo, String codice)
      Metodo che approva l'inserimento di un nuovo sensore all'interno del campo
      Parameters:
      idAzienda - codice dell'azienda in cui si aggiunge un nuovo sensore
      idCampo - codice del campo in cui si aggiunge un nuovo sensore
      codice - indica l'identificativo del sensore
      Returns:
      true se il sensore è stato aggiunto altrimenti false
    • approvaAttuatore

      public static boolean approvaAttuatore(int idAzienda, int idCampo, String codice)
      Metodo che approva l'inserimento di un nuovo attuatore all'interno del campo
      Parameters:
      idAzienda - codice del campo in cui si aggiunge un nuovo attuatore
      idCampo - codice del campo in cui si aggiunge un nuovo attuatore
      codice - indica l'identificativo del attuatore
      Returns:
      true se il attuatore è stato aggiunto altrimenti false
    • irrigaCampo

      public static boolean irrigaCampo(int idAzienda, int idCampo, String tipo, int quantita, String nomeAttuatore)
    • getStoricoIrrigazione

      public static List<irrigazioneCampoResponse> getStoricoIrrigazione(int idCampo)
    • getControlloQuantitaAcquaGiornaliero

      public static List<RichiestaResponse> getControlloQuantitaAcquaGiornaliero(int idAziendaIdrica, int idAziendaAgricola)