Camadas da
...
A aplicação é divida da seguinte maneira:
Interface de Usuário (Commons Business UI)
Camada de Serviços
Todos os serviços disponíveis são implementados utilizando o padrão de Restful Objects (http://restfulobjects.org/). Esta camada oferece uma forma de comunicação entre as diferentes partes do plugin.
Modelo de URI utilizado pela API REST:
http://{host}:{port}/{context}/rest/latest/domain/{object}/{actions}
Onde:
- {host} e {port} definem onde a aplicacao esta rodando
- {context} é o Servlet Context da aplicacao. Por exemplo, no crowd normalmente é /crowd
- {object} é o Objeto da camada de persistência a ser trabalhado (entidade de persistência "Company", caso a mesma exista)
Camada de Negócios
A camada de negócio é provida pela arquitetura, através das classes com sufixo Manager (dentro projeto 3layer-commons-buiness). Ela é estruturada da seguinte maneira:
Está camada fornece métodos CRUD com implementação básica e são expostos dentro da arquitetura para que, caso seja necessário, possam ser implementados de forma especifica. Os métodos declarados na interface IManager e Implementados na classe AbstractManager e são eles:
Especificando Métodos da Arquitetura
Caso sejam necessárias criar regras e validações especificas para um determinado fluxo, o mesmo pode ser feito seguindo os seguintes passos:
Criar uma interface que estenda IManager
Bloco de código theme Eclipse language java title Interface linenumbers true public interface IExemploManager extends IManager<Entidade>{ }Cria uma classe concreta que estenda a interface criada
Bloco de código theme Eclipse language java title Classe Concreta linenumbers true public class ExemploManager extends AbstractManager<Entidade> implements IExemploManager{ public PeriodManager(IBasicPersistence persistence) { super(persistence); } }
Arquitetura
Anteriormente na seção Proposta da Arquitetura, abordamos a interação entre componentes de cada uma das camadas. Além da interação, também introduzimos os frameworks utilizados nesta camada.
| Incluir Página | ||||
|---|---|---|---|---|
|
| Incluir Página | ||||
|---|---|---|---|---|
|
| Incluir Página | ||||
|---|---|---|---|---|
|
| Incluir Página | ||||
|---|---|---|---|---|
|

