code: public void initializeConnection(AppleNotificationServer server) throws CommunicationException, KeystoreException {
  		try {
  			this.connectionToAppleServer = new ConnectionToNotificationServer(server);
  			this.socket = connectionToAppleServer.getSSLSocket();
  
  			if (heavyDebugMode) {
  				dumpCertificateChainDescription();
  			}
  			logger.debug("Initialized Connection to Host: [" + server.getNotificationServerHost() + "] Port: [" + server.getNotificationServerPort() + "]: " + socket);
  		} catch (KeystoreException e) {
  			throw e;
  		} catch (CommunicationException e) {
  			throw e;
  		} catch (Exception e) {
  			throw new CommunicationException("Error creating connection with Apple server", e);
  		}
  	}
docs: Initialize a connection and create a SSLSocket
  @param server The Apple server to connect to.
  @throws CommunicationException thrown if a communication error occurs
  @throws KeystoreException thrown if there is a problem with your keystore