package de.weingardt.mylyn.gitlab.core.exceptions; import java.io.FileNotFoundException; import java.io.IOException; import java.net.ConnectException; import java.net.NoRouteToHostException; import javax.net.ssl.SSLHandshakeException; public class GitlabExceptionHandler { public static GitlabException handle(Throwable e) { if(e instanceof SSLHandshakeException) { return new GitlabException("Invalid TLS Certificate: " + e.getMessage()); } else if(e instanceof ConnectException) { return new GitlabException("Connection refused"); } else if(e instanceof NoRouteToHostException) { return new GitlabException("No route to host"); } else if(e instanceof FileNotFoundException) { return new GitlabException("Invalid path in host"); } else if(e instanceof IOException) { return new GitlabException("Invalid username/password/private token combination"); } return new GitlabException("Unknown Exception: " + e.getMessage()); } }