refactor server side exception handling, better error messages in client

This commit is contained in:
Aidan Hahn 2019-05-19 13:26:15 -07:00
parent a932852b2c
commit b74741427c
No known key found for this signature in database
GPG key ID: 327711E983899316
2 changed files with 19 additions and 10 deletions

View file

@ -13,9 +13,10 @@ import io.grpc.ServerBuilder;
import io.grpc.netty.GrpcSslContexts;
import io.grpc.netty.NettyServerBuilder;
import io.netty.handler.ssl.ClientAuth;
import io.netty.handler.ssl.SslContext;
import io.netty.handler.ssl.SslContextBuilder;
import io.netty.handler.ssl.SslProvider;
import javax.net.ssl.SSLException;
import java.io.File;
import java.io.IOException;
import java.util.logging.Logger;
@ -40,7 +41,7 @@ public class JobServServer {
public JobServServer(int port,
String serverCert,
String privateKey,
String trustStore) {
String trustStore) throws SSLException {
this.port = port;
SslContextBuilder sslContextBuilder = SslContextBuilder.forServer(new File(serverCert), new File(privateKey));
@ -48,7 +49,7 @@ public class JobServServer {
sslContextBuilder.trustManager(new File(trustStore));
sslContextBuilder.clientAuth(ClientAuth.REQUIRE);
this.ssl = GrpcSslContexts.configure(sslClientContextBuilder).build();
this.ssl = GrpcSslContexts.configure(sslContextBuilder).build();
}
/*
@ -59,7 +60,7 @@ public class JobServServer {
// TODO: this should be passed in from a configuration manager
server = NettyServerBuilder.forPort(port)
.addService(new ShellServerService())
.sslContext(getSslContextBuilder().build())
.sslContext(this.ssl)
.build()
.start();
logger.info("Server initialized!");
@ -110,7 +111,15 @@ public class JobServServer {
return;
}
final JobServServer server = new JobServServer(8448, args[0], args[1], args[2]);
JobServServer server;
try{
server = new JobServServer(8448, args[0], args[1], args[2]);
} catch (SSLException e) {
System.out.println(e.getMessage());
return;
}
server.start();
server.blockUntilShutdown();
}