|
FTPlus
RELEASE 1.0
Grupo Truga
Amauri- Ivan- Roger
|
|
|
|
|
|
1 | Requirements | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
2 | Design Description | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
3 | External Interfaces | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
4 | Functional Capabilities List | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
5 | Unit Code | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
6 | Unit Test Plan | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
7 | Test Case Results | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
8 | Build Procedures | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
9 | Problems Reports | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
10 | Notes | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger | |
11 | Reviewers | 22/05/98 | 22/05/98 | Amauri, Ivan, Roger |
1- Requirements
2- Design Description
O servidor fica em um loop aguardando novas conecções ftp que serão passadas para threads responsáveis pelo atendimento. Passa-se, então, a aguardar que o cliente envie os comandos USER e PASS -- necessáriamente -- para que se possa efetuar o login. Tendo sido efetuado, fica-se aguardando por comandos do cliente.
Cada comando corresponde a uma classe, ou seja, se o servidor não encontrar algum comando solicitado é porque a classe correspondente não está implementada. Com isso,teremos grande liberdade, uma vez que inclusões de novos comandos não exigirá mudanças no código do servidor, já que será necessário somente criar novas classes. Tudo isto é possível pois o servidor tem um método chamado start( ), que será o responsável pela execução da classe correspondente ao comando solicitado.
Já o cliente é basicamente um parser que irá identificar o que o cliente está requisitando, incluindo todo o tratamento de erros. O comando será enviado ao servidor, passando-se a aguardar resposta que será impressa no standard output.
A comunicação entre cliente e servidor é feita
por meio de sockets, sendo que existe um para leitura e outro para escrita.
Ao cliente deve ser passado a máquina onde está sendo
exeutado o servidor e a respectiva porta.
java Client <host> <porta>
java Client tubaina 21
Códigos do Servidor:
Códigos do Cliente:
11 - Reviewers