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

Questions Cloud

Waiting line statistics question : Customers enter the waiting line at a cafeteria on a first-come, first-served basis. The arrival rate follows a Poisson distribution, while service times follow an exponential distribution.
Provide physiological reason for dissatisfaction : You are trying to find a restaurant to take your great grandmother for Mother's Day. You have taken her to several places in town, but she is rarely satisfied with the food she is served, complaining that the food lacks flavor.
Developing a trend line : Develop a trend line for the demand for fertilizer using computer software. Data collected on the yearly demand for 50 pound bags of fertilizer at Wallace Garden Supply are shown in the following table:
What are the potential benefits : what are the potential benefits and the overall risks of genetic engineering? please explain and give exmaples.
Client server chat system : 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 net..
Detemine one un-breakable rule of dramatic writing : Detemine the one un-breakable rule of dramatic writing? When adapting novel to screen, what does screenwriter owe the original material?
Correlation between hours spent in the course : The correlation between hours spent in the course and exam grades is .8. what percent f variation in exam grades can be explained by hours spent in the course?
Explain the main trends in tfr and replacement fr : please explain the main trends in TFR and replacement FR in developed versus devloping countries? How can TFR of the overall human population be lowered.
Predicted value of cricket chirps : Find the best predicted temperature (in degree F) at a time when a cricket chirps 3000 times in one minute. What is wrong with this predicted value?

Reviews

Write a Review

JAVA Programming Questions & Answers

  Determine the day of the week for new year''s day

This assignment contains a java project. Project evaluates the day of the week for New Year's Day.

  Display student details and classes in applet

Display student details and classes they have enrolled in Applet. The Applet should have following features. Update and View.

  User session mgr - socket and thread programs

User Session Mgr - Socket and Thread Programs

  Write program in java-calculate and display mortgage payment

Write the program in Java (with a graphical user interface) and have it calculate and display the mortgage payment amount from user input of the amount of the mortgage.

  Implement the finite field gf

Write a program called "GF2.java" to implement the finite field GF(p n )where p is a prime number andn is a positive integer.You also need to write four methodsto realize.

  Develop a gui based java program

Designing and developing a College Registration program

  Create a java program to calculate the circumference

Create a Java program based on the geometric shapes. The program should begin by prompting you for the shape you want to calculate the circumference.

  Java program to create a tree

Java program to create a tree, generate class - BottomUpTwoThreeFourTree, BottomUpTwoThreeFourTree,

  Java application to declare and create a vector

Write a java application that perform the following task: declare and create a vector with initial size of 10, increment of 2

  Determine the decision of java

Determine the decision of Java as the platform to develop this program. Identify the Java-based technologies utilized in this project and analyze each of them. Then, provide discussion on the purpose of each of the Java-based technologies utiliz..

  Write various bindings to determine semantics

Write the various bindings that are required to determine the semantics when statement is executed. For each binding, indicate binding time used for language. Describe your answer.

  Fixing errors in a java program

You coded the following on line ten of the class MyApplet.java:

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