KID is being developed for the (fictitious) company KitchIntel.
This assignment assumes that KitchIntel uses a heavyweight process, in which a considerable amount of planning is done upfront, and the product design phase and the software engineering design and construction phases are more distinct. Again, the documents you are being given for this assignment are consistent with this process.
You should use one of the HTTP servers we discussed in
lecture. All of the source files (and data files they require) are
contained in the following .zip
files:
Remember that, as the system is currently implemented, the server
looks for files in the public_html
directory that is
at the same depth as the directory it is running in (i.e., up one
level and then down to public_html
. You should feel
free to change this.
A file containing the normal ranges for one of the devices is also available:
normal.ranges (Rename to .ranges)The ranges in this file are: [0,255], [9,256], [517,1024], [39,8000], [1000,2000], [8191,8191], [5632,8191], [10,20], [256,2048], and [0,8191].
Remember that this is a binary file.
UpdateClient
would be completed before you started working
on the HTTP server. However, the company they contracted with for the
UpdateClient
did not deliver a working product. Hence,
though your primary responsibility is to design and implement the
HTTP server, you will also need to design and implement a simple
UpdateClient
.
When started, the UpdateClient
will be passed a
command-line parameter of either "DOWN" or "UP". If it is passed
"DOWN" it must formulate and transmit a GET request for
normal.ranges
, wait for the response, and then print
the response in human-readable form on the console. If it is passed
"UP", it most read a local copy of
normal.ranges
, formulate and transmit a POST
request for normal.ranges
,
wait for the HTML response, and then print the HTML to the console.
normal.ranges
file
used comma-separated-value String
objects rather
than int
values?
normal.ranges
file at the same time?
Is this a problem? If so, why? If not, why not?
.zip
file named pa7.zip
that contains all of your code.
You should not submit any of the code that was provided to you
(i.e., for the HTTP server) unless you make substantial changes to it.
Copyright 2020