Client server chat system

Assignment Help JAVA Programming
Reference no: EM1398312

Project Details:

You will explore basic socket programming, threading and GUI design using Java's network library, threading system, and swing user interlace libraries to implement a basic chat client and saver system. Thc system will allow multiple. remote users to send and receive messages across the network. On receiving a send message from a client the server component will broadcast the message to the other clients connected to the server Consequently, the server component must be multithreaded so as to coordinate communications between the client systems

Part A- Basic Requirements

The basic requirements of this assignment are to implement the client and setter components as discussed above. The basic protocol of the system is described below:

The operations of the client arc:

SEND_SERVER_MESG send a basic text message to the sever
RECV_ SERVER MESG: receive text from the server

The operations of the server are:
RECV_CUENT_MESG: receive text from a client
BROADCAST_MF.SG: broadcast a text message received from a client to all the other clients connected to the server.

The server component should be multithreaded and new threads should be allocated and de-allocated when clients connect and disconnect from the server. These threads can he thought of as connection handlers which manage a client socket and input, output streams. To keep track of these handlers some son of dynamic data structure such as a vector or similar data structure can he used to coordinate access to these message handlers. The client component should be implemented at a GUI interface, and should allow users to anti text messages, display broadcast messages from the server, and send messages using a send button.

2494_client server chat system.png

Part B

I) Client registration (text file based, rather than database based, including usemarne and password)
2) Private messaging between users.
3) Blocking messages from specific users.
4) File or image transfer options.
5) Statistics functions for management at the server side (such as current users, total MSC'S, average time online, etc.).
6) Algorithms for efficient thread management.

Please make sure to include necessary unique comments in your source code and the GUI interfaces in case we have a doubt about the implementation Final marks depend on the quality, creativity and implementation of these extensions.

Reference no: EM1398312

Discuss the legal ramifications of the division of condo

Discuss the legal ramifications of the division of condo, BioTech and other assets. Would it make any difference if Violet sold the property after filing for the dissolution o

Write a driver program that reads in animals of type horse

Write a driver program that reads in 3 animals of type Horse and prints out the name, age and height of all non pure blood Horse objects that are 4 or more years old. The fo

Develop a java application to meet the requirements

As a competent programmer, your understanding of control structures, your ability to design and develop algorithms, and your proficient use of data structures will help you

Implement a shopping cart class with user interface

project will be to implement a shopping cart class with user interface (UI) that contains main() in Net Beans. The UI class will be used to perform user input/output and to in

Write program that uses a linkedlist object to store a list

Write a program that uses a LinkedList object to store a list of print jobs in a FIFO queue. We will assume that each job has a unique job number that is assigned sequential

What are value-returning methods

The methods must include: one value-returning method and one void method which will receive a formal parameter and one (each) that will not. Your program must compile and ru

Consider an array of integers

Consider an array of integers as below: int[] a = {5, 2, -4, 3, 0, -5, 7, 11, 6, 13} Complete the method named count(int[] a) in the class Count. The method should return th

Movie should be represented

Each movie should be represented by an object of type Movie. The Movie class must provide two public fields: title and category. Both of these fields should be Strings. The


Write a Review

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