import java.io.*;
import javax.net.ssl.*;


public class sslServer {
   
   

   private SSLServerSocket serverSocket;
   
   // sslServer constructor
   public sslServer() throws Exception
   {       
      // SSLServerSocketFactory for building SSLServerSockets
      SSLServerSocketFactory socketFactory = 
         ( SSLServerSocketFactory ) 
            SSLServerSocketFactory.getDefault(); 
      
      // create SSLServerSocket on specified port
      serverSocket = ( SSLServerSocket ) 
         socketFactory.createServerSocket( 7070 );   
      
   } // end sslServer constructor
   
   // start server and listen for clients
   private void runServer()
   {
      // perpetually listen for clients
      while ( true ) {
         
         // wait for client connection and check login information
         try {
         
            System.err.println( "Waiting for connection..." );
            
            // create new SSLSocket for client
            SSLSocket socket = 
               ( SSLSocket ) serverSocket.accept();

            System.err.println( "Connected...");

            // open BufferedReader for reading data from client
            BufferedReader input = new BufferedReader( 
               new InputStreamReader( socket.getInputStream() ) );
            
	    String line = input.readLine();
 	    System.out.println(line);

            input.close();
            socket.close();
            
         } // end try
         
         // handle exception communicating with client
         catch ( IOException ioException ) {
            ioException.printStackTrace();
         }
         
      } // end while      
   
   } // end method runServer
   
   // execute application
   public static void main( String args[] ) throws Exception
   {
      sslServer server = new sslServer();
      server.runServer();
   }
}
