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

Briefly describe the purpose of windows powershell, Question: a) Brief...

Question: a) Briefly describe the purpose of Windows Powershell? b) Name ways software can be installed on Linux? c) What is an interrupt request? d) As the Networ

Error correcting code - hamming code, Error Correcting Code - Hamming Code:...

Error Correcting Code - Hamming Code: Hamming code is the one of the error-correcting code named after its inventor. Because of the simplicity of the hamming code, it can dete

What is connection-oriented communication, What is Connection-oriented comm...

What is Connection-oriented communication Connection-oriented communication can be in three phases. In establishment phase a request is made to set up the connection. Only afte

Switching via memory - network layer and routing , Switching  via memory ...

Switching  via memory Traditional  computers with switching  between  input and output  being  doen under  direct  control  of the CPU input and output  ports  functioned as tr

What is project 802, What is Project 802? It is a project begins by IEE...

What is Project 802? It is a project begins by IEEE to set standards that enable intercommunication among equipment from a variety of manufacturers. It is a way for specifying

Computer nework critira, what is compurter network and types, topology, com...

what is compurter network and types, topology, communication media

Explain about domain name system, Q. Explain about Domain Name System? ...

Q. Explain about Domain Name System? -In the past, mapping of IP addresses was static using a host file -Impossible in today's dynamic environment -Domain Name System (DN

Master construct program in parallel construct, master construct #incl...

master construct #include extern float average(float,float,float); void master_construct ( float* x, float* xold, int n, float tol )  { int c, i, toobig; floa

Assignment help, Hello there i have an assignment in Data communication an...

Hello there i have an assignment in Data communication and networks. I have done most of the assignment but i am stuck in one part which is designing a network in a university cam

The network interface layer - fundamentals of networks, The Network Interfa...

The Network Interface Layer The functions  of the data  link layer and the physical  layer of   the OSI model  have been  combined into a  single  layer called  the network in

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