Package controllers

Class CompanyController


  • public class CompanyController
    extends java.lang.Object
    Representa o controlador das empresas.

    Contém métodos para atualização, criação e gerenciamento destes.

    Since:
    2023
    Version:
    1.2
    Author:
    Ana Clara, Arthur e Caio
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String[] availableRegions  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Company createCompany​(java.lang.String name, java.lang.String email, java.lang.String state, java.lang.String city, java.lang.String street, java.lang.String occupationArea, java.lang.String owner)
      Cria um objeto do tipo Company com os parâmetros pré-definidos.
      void deleteCompany​(Company company)
      Deleta o objeto do tipo Company da memória (classe de dados).
      java.util.ArrayList<Company> filterCompaniesByName​(java.lang.String name, java.util.ArrayList<Company> companies)
      Filtra os objetos do tipo Company de uma lista pré-definida através do parâmetro nome.
      java.util.ArrayList<Company> filterCompaniesByRegion​(java.lang.String region)
      Filtra e retorna uma lista do tipo Company de acordo com a região escolhida.
      java.util.ArrayList<Company> getCompanies()
      Retorna uma lista do tipo Company cadastradas e salvas na memória.
      java.util.ArrayList<java.lang.String> getCompanyOwners()
      Retorna uma lista com todos os nomes das empresas cadastradas na memória e seus respectivos representantes.
      java.util.ArrayList<java.lang.String> getCompanyRegions()
      Retorna as regiões (por estado) das empresas cadastradas na memória.
      void updateCity​(Company company, java.lang.String city)
      Atualiza o endereço da empresa por cidade, caso haja alteração na cidade.
      void updateEmail​(Company company, java.lang.String email)
      Atualiza o e-mail da empresa, caso haja alteração no e-mail.
      void updateName​(Company company, java.lang.String name)
      Atualiza o nome da empresa, caso haja alteração no nome.
      void updateOccupationArea​(Company company, java.lang.String occupationArea)
      Atualiza a área de ocupação da empresa, caso haja alteração na área de ocupação.
      void updateState​(Company company, java.lang.String state)
      Atualiza o endereço da empresa por estado, caso haja alteração no estado.
      void updateStreet​(Company company, java.lang.String street)
      Atualiza o endereço da empresa por rua, caso haja alteração na rua.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • availableRegions

        public static java.lang.String[] availableRegions
    • Constructor Detail

      • CompanyController

        public CompanyController()
    • Method Detail

      • createCompany

        public Company createCompany​(java.lang.String name,
                                     java.lang.String email,
                                     java.lang.String state,
                                     java.lang.String city,
                                     java.lang.String street,
                                     java.lang.String occupationArea,
                                     java.lang.String owner)
        Cria um objeto do tipo Company com os parâmetros pré-definidos. Neste caso, também é necessário incluir o endereço da empresa.

        Ao utilizar este método, ele será automaticamente incluído na memória. Isto é, na classe de dados.

        Parameters:
        name - o nome da empresa
        email - o e-mail da empresa
        state - o estado da empresa (endereço)
        city - a cidade da empresa (endereço)
        street - a rua da empresa (endereço)
        occupationArea - a área de ocupação da empresa
        owner - o representante da empresa (username)
        Returns:
        a classe da empresa, Company
      • getCompanies

        public java.util.ArrayList<Company> getCompanies()
        Retorna uma lista do tipo Company cadastradas e salvas na memória.
        Returns:
        uma lista do tipo ArrayList<Company>, as empresas cadastradas e salvas na memória.
      • getCompanyOwners

        public java.util.ArrayList<java.lang.String> getCompanyOwners()
        Retorna uma lista com todos os nomes das empresas cadastradas na memória e seus respectivos representantes.
        Returns:
        uma lista com todos os nomes das empresas e seus representantes, ArrayList<String>
      • getCompanyRegions

        public java.util.ArrayList<java.lang.String> getCompanyRegions()
        Retorna as regiões (por estado) das empresas cadastradas na memória.
        Returns:
        uma lista do tipo ArrayList<String>, as regiões cadastradas nas empresas
      • filterCompaniesByRegion

        public java.util.ArrayList<Company> filterCompaniesByRegion​(java.lang.String region)
        Filtra e retorna uma lista do tipo Company de acordo com a região escolhida.
        Parameters:
        region - o estado desejado para filtragem (endereço)
        Returns:
        uma lista das empresas filtradas, ArrayList<Company>
      • filterCompaniesByName

        public java.util.ArrayList<Company> filterCompaniesByName​(java.lang.String name,
                                                                  java.util.ArrayList<Company> companies)
        Filtra os objetos do tipo Company de uma lista pré-definida através do parâmetro nome. Caso o nome da empresa contenha uma parte (ou seja, é substring), será retornada.
        Parameters:
        name - o nome desejado para filtrar
        companies - a lista de empresas a ser filtrada, ArrayList<Company>;
        Returns:
        uma lista das empresas filtradas, ArrayList<Company>
      • deleteCompany

        public void deleteCompany​(Company company)
        Deleta o objeto do tipo Company da memória (classe de dados).
        Parameters:
        company - o objeto do tipo Company a ser deletado
      • updateName

        public void updateName​(Company company,
                               java.lang.String name)
        Atualiza o nome da empresa, caso haja alteração no nome.
        Parameters:
        company - o objeto do tipo Company a ser deletado
        name - o novo nome da empresa
      • updateEmail

        public void updateEmail​(Company company,
                                java.lang.String email)
        Atualiza o e-mail da empresa, caso haja alteração no e-mail.
        Parameters:
        company - o objeto do tipo Company a ser atualizado
        email - o novo e-mail da empresa
      • updateState

        public void updateState​(Company company,
                                java.lang.String state)
        Atualiza o endereço da empresa por estado, caso haja alteração no estado.
        Parameters:
        company - o objeto do tipo Company a ser atualizado
        state - o novo estado (endereço) da empresa
      • updateCity

        public void updateCity​(Company company,
                               java.lang.String city)
        Atualiza o endereço da empresa por cidade, caso haja alteração na cidade.
        Parameters:
        company - o objeto do tipo Company a ser atualizado
        city - a nova cidade (endereço) da empresa
      • updateStreet

        public void updateStreet​(Company company,
                                 java.lang.String street)
        Atualiza o endereço da empresa por rua, caso haja alteração na rua.
        Parameters:
        company - o objeto do tipo Company a ser atualizado
        street - a nova rua (endereço) da empresa
      • updateOccupationArea

        public void updateOccupationArea​(Company company,
                                         java.lang.String occupationArea)
        Atualiza a área de ocupação da empresa, caso haja alteração na área de ocupação.
        Parameters:
        company - o objeto do tipo Company a ser atualizado
        occupationArea - a nova área de ocupação da empresa