-
Notifications
You must be signed in to change notification settings - Fork 0
phase3
This document describes the requirements for the third phase of the Software Laboratory project.
The main requirement for the third phase is the delivery of an HTTP server able to handle all the GET
commands developed on the first and second phases.
This server must use the HTTP (Hypertext Transfer Protocol) protocol to receive command requests and return their responses.
The response's contents must use the text/plain
or text/html
formats.
- The console application must also implement the additional
LISTEN /
, which starts the HTTP server. This command receives aport
parameter containing the TCP port where the server should listen for requests.
The responses for any successful request must fulfill the following requirements:
-
When the response is represented in the HTML format and contains a list, then each item must include a link to the item detail. For instance, the HTML document returned on a successful
GET
to/movies
must include links to each movies, pointing to/movies/{mid}
. -
The responses must also contain the links required to ensure the navigability between all the resources, as defined in the following graph. For instance, the document returned on a successful
GET
to/movies/{mid}
must contain a link to/movies
.
(Click here for a bigger picture)
-
The
/movies
representation must include links to all the alternative sorting criteria. -
The new
/tops/ratings
must include links to all/tops/{n}/ratings/...
withn=5
. -
All the listing must support paging with a page size of 5.
-
All the representations must include a link to the root (home) representation.
This project phase must be delivery until May 28 (end of week 12), via the creation of a 0.3.0 tag on the GitHub repository.