Note: (Restricted functionality due to obvious reasons!)
Minimal Code ( Raw-View ) :
import java.net.*;
import java.io.*;
class ThreadServerRestricted extends Thread
{
public void run()
{
try
{
ServerSocket sskt = new ServerSocket(1500); // 1500 -> port
System.out.println("Waiting...");
Socket skt = sskt.accept();
System.out.println("Client Connected !");
PrintWriter out = new PrintWriter(skt.getOutputStream(),true); // true -> for flushing after sending;
BufferedReader readC = new BufferedReader(new InputStreamReader(skt.getInputStream()));
BufferedReader readkb = new BufferedReader(new InputStreamReader(System.in));
FileReader fr = new FileReader("users.txt"); // true for append mode
BufferedReader readuspw = new BufferedReader(fr);
String uspw = "", user="";
out.println("Username : ");
user = readC.readLine();
out.println("Password : ");
uspw = user+" "+readC.readLine();
String msg = "";
int flag = 0, temp=0;
String lcnt;
while((lcnt = readuspw.readLine())!=null)
{
if(lcnt.equals(uspw))
{
flag++;
System.out.println(lcnt); // for user-login LOG on Server
}
}
if(flag>0)
{
out.println("Login Successful !");
do
{
msg = readC.readLine(); // Receiving
System.out.println(user+": "+msg);
msg = readkb.readLine(); // Sending
out.println("Srvr: "+msg);
}
while(!msg.equals("bye"));
}
else
{
out.println("Login Failed !");
}
}
catch(Exception e)
{
System.out.println(e);
}
}
}