diff options
Diffstat (limited to 'client/ServerRequester.java')
| -rw-r--r-- | client/ServerRequester.java | 120 |
1 files changed, 60 insertions, 60 deletions
diff --git a/client/ServerRequester.java b/client/ServerRequester.java index 588d528..9cd7485 100644 --- a/client/ServerRequester.java +++ b/client/ServerRequester.java @@ -1,5 +1,5 @@ /** - * + * */ package client; @@ -15,68 +15,68 @@ import shared.remotecall.*; /** * This class only has static members. Its used for creating a client socket to connect and - * communicate with the calendar server. + * communicate with the calendar server. * @author buetow */ public class ServerRequester { - /** - * This method creates a new client socket. - * @return Returns a client socket object. - * @throws IOException - */ - private static Socket makeClientSocket() throws IOException { - if (!Config.getBooleanValue("use_ssl")) { - Main.statusMessage("Making non-SSL Socket..."); - return new Socket(Config.getServerAddress(), Config.getIntValue("server_port")); - } + /** + * This method creates a new client socket. + * @return Returns a client socket object. + * @throws IOException + */ + private static Socket makeClientSocket() throws IOException { + if (!Config.getBooleanValue("use_ssl")) { + Main.statusMessage("Making non-SSL Socket..."); + return new Socket(Config.getServerAddress(), Config.getIntValue("server_port")); + } - Main.statusMessage("Making SSL Socket..."); - //Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); - SocketFactory socketFactory = SSLSocketFactory.getDefault(); - return socketFactory.createSocket(Config.getServerAddress(), Config.getIntValue("server_port")); - } - - /** - * Sends a client request to the netcalendar server end receives a server response object. - * @param clientRequest Specifies the client request to send to the calendar server. - * @return Returns the server response. It returns null if no response is available. - */ - public final static ServerResponse sendClientRequest(ClientRequest clientRequest) { - Main.statusMessage("Sending client request to server..."); - - ServerResponse serverResponse = null; - - try { - Socket socket = makeClientSocket(); - socket.setKeepAlive(true); - - // Send the client request to the server - OutputStream outputStream = socket.getOutputStream(); - ObjectOutput objectOutput = new ObjectOutputStream(outputStream); - - objectOutput.writeObject(clientRequest); - objectOutput.flush(); + Main.statusMessage("Making SSL Socket..."); + //Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); + SocketFactory socketFactory = SSLSocketFactory.getDefault(); + return socketFactory.createSocket(Config.getServerAddress(), Config.getIntValue("server_port")); + } - // We only want to receive data if the request new events, not if we only send - // changed events! - if (clientRequest.requestsNewEvents()) { - // Recieve the server's response - InputStream inputStream = socket.getInputStream(); - ObjectInput objectInput = new ObjectInputStream(inputStream); - serverResponse = (ServerResponse) objectInput.readObject(); - } - - objectOutput.close(); - socket.close(); - - } catch (Exception e) { - Main.infoMessage("Client error during serialization: " + e.getMessage()); - Main.statusMessage("Error: Client request did not succeed! Server down?"); - return serverResponse; - } - - Main.statusMessage("Last client request succeeded"); - // Returns null if no response is available! - return serverResponse; - } + /** + * Sends a client request to the netcalendar server end receives a server response object. + * @param clientRequest Specifies the client request to send to the calendar server. + * @return Returns the server response. It returns null if no response is available. + */ + public final static ServerResponse sendClientRequest(ClientRequest clientRequest) { + Main.statusMessage("Sending client request to server..."); + + ServerResponse serverResponse = null; + + try { + Socket socket = makeClientSocket(); + socket.setKeepAlive(true); + + // Send the client request to the server + OutputStream outputStream = socket.getOutputStream(); + ObjectOutput objectOutput = new ObjectOutputStream(outputStream); + + objectOutput.writeObject(clientRequest); + objectOutput.flush(); + + // We only want to receive data if the request new events, not if we only send + // changed events! + if (clientRequest.requestsNewEvents()) { + // Recieve the server's response + InputStream inputStream = socket.getInputStream(); + ObjectInput objectInput = new ObjectInputStream(inputStream); + serverResponse = (ServerResponse) objectInput.readObject(); + } + + objectOutput.close(); + socket.close(); + + } catch (Exception e) { + Main.infoMessage("Client error during serialization: " + e.getMessage()); + Main.statusMessage("Error: Client request did not succeed! Server down?"); + return serverResponse; + } + + Main.statusMessage("Last client request succeeded"); + // Returns null if no response is available! + return serverResponse; + } } |
