View Javadoc

1   package uba.db.sql.server;
2   
3   import java.io.BufferedReader;
4   import java.io.IOException;
5   import java.io.InputStream;
6   import java.io.InputStreamReader;
7   import java.io.OutputStream;
8   import java.io.PrintWriter;
9   
10  public class ClientRequestProcessor {
11      private DBProtocol protocol;
12      private PrintWriter out;
13      private BufferedReader in;
14  
15      public ClientRequestProcessor(DBProtocol protocol, InputStream input,
16              OutputStream output) {
17          this.protocol = protocol;
18          out = new PrintWriter(output, true);
19          in = new BufferedReader(new InputStreamReader(input));
20      }
21  
22      public void handleRequests() throws ClientResquestHandlingException {
23          String inputLine;
24          String outputLine = protocol.processInput(null);
25          out.println(outputLine);
26  
27          try {
28              while ((inputLine = in.readLine()) != null) {
29                  outputLine = protocol.processInput(inputLine);
30                  out.println(outputLine);
31                  if (outputLine.equals("Connection Closed"))
32                      break;
33              }
34          } catch (IOException e) {
35              throw new ClientResquestHandlingException(e);
36          }
37      }
38  }