Refer to
Checklist Instructions as needed.
Change "No" to "Yes" as you complete the tasks:
Comment two if needed
etc.
Task
Complete?
--------------- ADMINISTRATION -----------------
[ENTER YOUR NAME HERE]
.
I understand that making false claims on this checklist is an academic integrity violation.
No
Except for the ColorServer code, and the helper code for this assignment, or my own code from a
previous assignment, I have not copied any other Java source code for this assignment.
No
Academic Integrity quiz completed with perfect
score? (Required before assignments can be graded for credit.) No
<>
My code is compatible with the version of Java required by this course.
No
Included the required full Header Information in my Java file?
No
Removed all package statements from my .java source code.
No
Saved THIS file in plain-text HTML format, and viewed it in a browser to check the appearance?
No
Copied my completed and compiling Gossip.java file to Gossip.java.txt and submitted the .txt version to D2L?
No
Will have submitted ChecklistGossip.html? (This file).
No
Downloaded my own Gossip.java.txt file submission from D2L, renamed it to Gossip.java
and checked that it still compiles and runs? RECOMMENDED.
No
<>
.
Gossip.java fully compiles?
No
Runs and accepts input from any of the consoles?
No
Starts up with an argument and announces itself as the appropriately named node (Node0—Node9)?
No
Implemented "t" to display (tell us) the list of commands available, one to a line. LOCAL NODE.
No
Communicates exclusively via UDP.
No
Implemented "l" to display the local values on the console of each node. ALL NODES.
No
Nodes can each be started and stopped at will, in any order, without affecting the rest of the gossip network.
No
Posted at least two interesting comments, questions or responses in the Gossip discussion forum
on D2L and also included them as Java comments at the bottom of my source code.
No
I created a GossipLog.txt file using copy and paste from several consoles and included it as Java comments
at the bottom of my source code.
No
.
I have at least two server threads of execution so that I can listen for Gossip connections and handle them,
but also am always able to listen for console input on all my consoles at the same time.
No
Implemented "p" Ping to check if I have a neighbor one node number higher and one node number
lower. (Will probably require sending manual UDP acknowledgments.) LOCAL NODE
No
Implemented "m" to display the minimum value and the maximum value on the consoles of ALL NODES,
along with the name of the nodes where those values reside.
No
Implemented "a" to calculate the average of all the values in the
[sub-]network and displayed it at ALL NODES, preceded by Local Node ID and Local Node Value).
No
Implemented "z" to calculate the current [sub-]network size of the network. Display on ALL consoles.
No
Implemented "v" to create new random local values throughout the network at each node. Display the old value and the
new value on the console of ALL NODES.
No
.
Implemented "d" to delete the current node. Fully stop the process. Be sure to gracefully close the socket
[this is non-trivial; see HostServer], so that we can restart a node later at the same node ID and port
number. May need to send a "wakeup" message to the same node so you can stop the server loop.
No
Implemented "k" to Kill the entire network.
No
Implemented "y" to display the number of cycles since the beginning of time on every node in the
network. Note that this may not be the same on all consoles if two sub-networks have been joined.
No
Implemented "n" such that N is an integer that sets the number of gossip messages that can be sent to the same neighbor
during any one cycle.
No
Extra command of your own choosing that you implement (not required). ETC. Describe here one to a line.
No
.
. Comments:
Comment one if needed