进行中

JAVA SOCKET PROGRAMING

Client/Server Programming

You are required to write Java programs using BSD sockets to implement a simple online telephone directory system. Two applications (client and server) using TCP connection are required. The client application (named client-phonedb) allows users to query and update the telephone database depending on user type (i.e. general user, administer). The system administer is identified by providing the correct access code (any combinations of alphanumeric characters) in the command line for client. The actions (determined by command line option) to be performed by client are listed below:

---query telephone number:

client-phonedb -h host -p port -q name

---delete a record (for system administer only):

client-phonedb -h host -p port -d name -s accessCode

---add a record (for system administer only):

client-phonedb -h host -p port -a "name & phoneNo" -s accessCode

---list all records and save in client side as a file (for system administer only):

client-phonedb -h host -p port -l [url removed, login to view] -s accessCode

Once the server application (named server-yp) starts, it listens for a request, processes the request, sends the response and waits for the next request. It should not exit for any abnormal client operations. After processing a client request, the server should also inform the client whether the request was processed successfully or not. When the server application initiates (at a port number specified in command line option -p), the telephone database is loaded into internal memory from an external ASCII text file (specified in command line option -f):

server-phonedb -p port -f [url removed, login to view] -o [url removed, login to view]

Update of the database by client operations are performed only in physical memory of the server machine (i.e. no need to save records in file). You may use any data structure (e.g. array or list) to implement the database. Every update operations (i.e. delete, add) have to be recorded in the log file (specified in command line option -o). For server management you should also record any abnormal client request. In the log file you should record

date & time for client request

action required

details of the record being updated

client IP address and port number

client hostname

the status

You have to design the record format of the input telephone directory text file, but the format must be the SAME as that obtained by client action (4)--list all records. Each record should contain the following fields:

company/person name

phone number

There are some situations that you have to take into considerations when writing the client/server applications. When a client has sent a request, it waits for a response. Should the client waits forever? In other words, is it necessary to handle message lost/duplication? If yes, how?

TASKS

1>The client/server accepts optional command line parameters properly.

2>The client/server choose sensible defaults for optional command line arguments.

3> Client requests to query a phone number

4> Client requests to update a record

5> Client requests to add a record

6> Client requests to list all records and save in file

7> Server operations on telephone database required for each client request

8> Server saves transaction details in log file

9> Strategy to handle message lost/duplication

10> Error handling in client/server

What to Hand In

The deliverables are:

Client source code

Server source code

report explaining sample runs, error handling and handling of message lost/duplication

As usually, we expect well commented code with descriptive identifier names and neat presentation.

技能: Java, JSP

查看更多: java socket retry, java socket ftp, socket programing java, java sockets projects, file delete client server programming java, use list command socket programming java, save client socket details java, save socket details java, java socket client text file, java socket save file, java socket text, java socket client retry, java sockets project, java socket programing, add records file socket java, yp, writing to a file java, writing to a file in java, write presentation report online, write java code online

关于此雇主:
( 0个评论 ) Singapore, Singapore

项目ID: #213122

16 威客就此工作平均出价 $68

Shot

Wide experience of programming on Java and development of client-server applications.

$100 USD 在10天内
(12条评论)
6.4
fstudio

hi, sir. I am very interested in your project. Please see PMB for more detail. Thanks, Best Regards.

$80 USD 在4天内
(55条评论)
5.5
marchent

hi i'll deliver the solution within 2 days at max. let me know if you are interested.

$100 USD 在2天内
(31条评论)
4.5
sdecima

I can implement the functionality you describe with no problem in a Java Application. If you are interested in my services please don't hesitate to contact me. Please see my PM for more information.

$50 USD 在2天内
(3条评论)
3.5
minyun

Hi, sir. I'm a professional programmer. I'm expert in Java Programming. I'm very interested in this project. Please let me help you. Thanks

$50 USD 在2天内
(4条评论)
2.5
arungs83

Hi, As i am new to freelance i need this project coz i'm working in similar kind of project.I have 2+ years of exp in development in NMS

$50 USD 在7天内
(0条评论)
0.0
amarjobseeker

Rising Technology is a growing IT developing company, which aspires to become one of the leading providers of IT Solutions, globally. Since, we’re a budding company as our vision, instinct and composition reflects it 更多

$80 USD 在10天内
(0条评论)
0.0
Himanshu4u

sir i can do it in 2 days give me a chance

$40 USD 在2天内
(0条评论)
0.0
drivecs

hi, sir. I am very interested in your project. Please see PMB for more detail. Thanks, Best Regards. I will PM you some details

$80 USD 在4天内
(0条评论)
0.0
hahiha

Sir, I am interested in your project.

$100 USD 在30天内
(0条评论)
0.0
sscilli

Hello, we are deeply experienced in java programming, please check PMB for details.

$100 USD 在2天内
(0条评论)
0.0
gowthamdiff

i can complete this project with in 2 days. i ll deliver the project without any bugs

$40 USD 在5天内
(0条评论)
0.0
rebelspy

Ready to start...

$100 USD 在7天内
(0条评论)
0.0
sapple

Hi, We are an ISO certifed software company based in Delhi India and are a teaming partner of CDAC (Centre for Development of Advanced Computing, Ministry of Communication and Information Technology, Govt. of India 更多

$75 USD 在4天内
(0条评论)
2.0
FaisalKadir

I am interested in doing your project. If you accept my bid please let me know. Let me give you a brief of my work Plan. For server input database I will use Red Black Tree Data Structure. This will give a O(lgn) ins 更多

$50 USD 在2天内
(0条评论)
0.0
BDIIT

Pls see the PMB...

$50USD 在1天里
(1条评论)
0.0
mea

I have been working in Java since 2002. am a Sun Certified Java Programmer, with expert level experience in socket programming. I have developed -- Custom Ftp client/server -- Custom Mail client/server -- Chat cli 更多

$48 USD 在4天内
(0条评论)
3.3