GUACAMOLE-38: Remove default protocol and port, throw errors if not specified.

Project: http://git-wip-us.apache.org/repos/asf/guacamole-client/repo
Commit: http://git-wip-us.apache.org/repos/asf/guacamole-client/commit/8c130215
Tree: http://git-wip-us.apache.org/repos/asf/guacamole-client/tree/8c130215
Diff: http://git-wip-us.apache.org/repos/asf/guacamole-client/diff/8c130215

Branch: refs/heads/master
Commit: 8c130215f49c862819b3dfca219403db296a3a18
Parents: 84e71a0
Author: Nick Couchman <vn...@apache.org>
Authored: Mon May 21 09:56:50 2018 -0400
Committer: Nick Couchman <vn...@apache.org>
Committed: Fri Jun 1 13:40:53 2018 -0400

----------------------------------------------------------------------
 .../auth/quickconnect/utility/QCParser.java        | 17 ++++-------------
 1 file changed, 4 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/guacamole-client/blob/8c130215/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/utility/QCParser.java
----------------------------------------------------------------------
diff --git 
a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/utility/QCParser.java
 
b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/utility/QCParser.java
index 60b4b9c..2810f1d 100644
--- 
a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/utility/QCParser.java
+++ 
b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/utility/QCParser.java
@@ -42,17 +42,6 @@ import org.apache.guacamole.protocol.GuacamoleConfiguration;
 public class QCParser {
 
     /**
-     * The default protocol to use if one is not provided in
-     * the incoming URI.
-     */
-    public static final String DEFAULT_URI_PROTOCOL = "ssh";
-
-    /**
-     * The default host to use if one is not defined.
-     */
-    public static final String DEFAULT_URI_HOST = "localhost";
-
-    /**
      * The regex to use to split username and password.
      */
     private static final Pattern userinfoPattern = 
Pattern.compile("(^[^:]+):?(.*)");
@@ -89,6 +78,8 @@ public class QCParser {
         URI qcUri;
         try {
             qcUri = new URI(uri);
+            if (!qcUri.isAbsolute())
+                throw new GuacamoleClientException("URI must be absolute.");
         }
         catch (URISyntaxException e) {
             throw new GuacamoleClientException("Invalid URI Syntax", e);
@@ -108,7 +99,7 @@ public class QCParser {
         if (protocol != null && !protocol.isEmpty())
             qcConfig.setProtocol(protocol);
         else
-            qcConfig.setProtocol(DEFAULT_URI_PROTOCOL);
+            throw new GuacamoleClientException("No protocol specified.");
 
         // Check for provided port number
         if (port > 0)
@@ -118,7 +109,7 @@ public class QCParser {
         if (host != null && !host.isEmpty())
             qcConfig.setParameter("hostname", host);
         else
-            qcConfig.setParameter("hostname", DEFAULT_URI_HOST);
+            throw new GuacamoleClientException("No host specified.");
 
         // Look for extra query parameters and parse them out.
         if (query != null && !query.isEmpty()) {

Reply via email to