Skip to content

Java code base supports the file upload,delete,rename and download using remote procedure call communication(RPC).

Notifications You must be signed in to change notification settings

gopikrsmscs/multithread-file-system

Repository files navigation

MULTITHREADING FILE SYSTEM

Problem Statement

Implement a Multi-Threaded File Server that supports UPLOAD, DOWNLOAD, DELETE, and RENAME file operations. Use different folders to hold files downloaded to the client or uploaded to the server.

Supporting Operations

  • Upload selected file from client to sever
  • Delete a given file from server
  • Rename server file
  • Download the file from the client

Starting server

1.Open Terminal
2.Go to Downloaded Project Directory

Perform the below operation to start the server

	1.cd DSCode/MultithreadFileSystem/src
	2.javac *.java
	3.java FileServer

Server Start Output

Screenshot

Running Client

Open New Terminal and Run the below command to start the Helper Thread.

	1.cd DSCode/MultithreadFileSystem/src
	2.javac *.java
	3.java MultiThreadClient 

OUTPUT

Screenshot

1.UPLOAD

When we run the client MultiThreadClient it will ask for the Operation we want to perform.

Below is the input format.

	UPLOAD abs.pdf
	UPLOAD file.pdf

Note: abs.pdf and file.pdf already present in the client folder

Output

Screenshot

A file abs.pdf should be present in the folder DSCode/MultithreadFileSystem/src/serverfiles

2.DOWNLOAD

	DOWNLOAD file.pdf

OUTPUT

Screenshot

A file file.pdf should be present in the folder DSCode/MultithreadFileSystem/src/clientfiles/download

RENAME

	RENAME file.pdf f.pdf

OUTPUT

Screenshot

Go to folder DSCode/MultithreadFileSystem/src/serverfiles a file f.pdf must be presnet.

DELETE

	DELETE f.pdf

OUTPUT

Screenshot

Go to folder DSCode/MultithreadFileSystem/src/serverfiles a file f.pdf must be deleted.

About

Java code base supports the file upload,delete,rename and download using remote procedure call communication(RPC).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages