Approach for client - server communication, Computer Networking

Assignment Help:

Client

Once the GUI application is loaded, it will send a request (instance/object of Commands class) to server for a list of files from the server's shared directory.Client will write Commands object to ObjectOutputstream. Commands class has to implement Serializable interface as this will be transferred over the network. Commands class will have following value:
- nextCommand value in Commands object will be set to COMMAND_SEND_FILE_LIST
Server

Upon receiving the file list request, the server will read all the files (no directory) in the server's shared directory and wrap each file name and corresponding size in FileInfo object. DirInfo object will have a variable named fileList with type of List(implementation ArrayList). Server will write DirInfo object to socket's ObjectOuputStream so that client can read it from ObjectInputStream.DirInfo and FileInfoclass have to implement Serializable interface as these will be transferred over the network.

Client

Client will read DirInfo object from ObjectInputStream and populate the JList on "Remote File List" panelwith file names. At the same time, each fileName and corresponding fileSize should be saved in a HashMap.Once the JList is loaded and the user double clicks a file name in the JList, client will send a Commands object to server (by writing to ObjectOutputstream) with following values:
- nextCommand value in Commands object will be set to COMMAND_SEND_FILE
- fileName should be set with the double-clicked file name from the JList


Server

Upon receiving send file request (will read Commands object from ObjectInputStream), the server will read the nextCoomand and fileName from Commands object and start transferring the file bytes to client by writing to OutputStream (Could be wrapped into a BufferedOutputStream for efficiency).

Client

Client will read file binaries from InputStream(not ObjectInputStream) and finish reading when number of bytes read is length of the corresponding file name. The file length can be derived by passing the fileName to HashMap where file length was stored earlier while populating the JList based on DirInfo object received from server. Once the file content is read it will be then saved in the download directory on client machine.


Related Discussions:- Approach for client - server communication

Explain about nonboundary-level masking, Q. Explain about Nonboundary-Level...

Q. Explain about Nonboundary-Level Masking? Nonboundary-Level Masking Bytes in the IP address that correspond to 255 in the mask will be repeated in the subnet addres

How can you manage a network using a router, How can you manage a network u...

How can you manage a network using a router? Routers have built in console that lets you configure dissimilar settings, like security and data logging. You can allocate restric

Bit stream structure, In OSI 7 layer model, a header, or possibly a trailer...

In OSI 7 layer model, a header, or possibly a trailer, can be added to the data unit at each layerI 7 layer, but we will define a simple virtual packet which contains only 8bit dat

What is an object server, What is an Object server? With an object serv...

What is an Object server? With an object server, the Client/Server application is printed as a set of communicating objects. Client object converse with server objects using an

Factor causing parallel overheads, Factor Causing Parallel Overheads F...

Factor Causing Parallel Overheads Figure clearly explains that the performance metrics are not able to achieve a linear curve in comparison to the enhance in number of process

Estimate of average delay deviation, Consider the procedure described for e...

Consider the procedure described for estimating average delay di. Suppose that u=0.1. Let r1-t1 be the most recent sample delay, let     r2 -t2 be the next most recent sample delay

Facts about fiber optic cables - Computer Network, Facts about  Fiber Opti...

Facts about  Fiber Optic Cables 1. Outer insulating jacket is made  of Teflon or PVC. 2. Kevler fiber  helps  to strengthen  the cable and prevent breakage. 3. A plas

What is testing, Testing is used for estimate the quality of the product. U...

Testing is used for estimate the quality of the product. Unit Testing is tested for every part of the product. Integrate the unit & tested.

Explain about traffic shaping, Q. Explain about Traffic shaping ? Traf...

Q. Explain about Traffic shaping ? Traffic shaping -Method to control the amount and the rate of the traffic sent to the network.? Leaky bucket Token bucket -

Error detection in lrc - performance, LRC - Performance Detects ev...

LRC - Performance Detects every burst errors up to length n (number of columns) If two bits in one data unit are damaged as well as two bits in exactly same positions

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd