@@ -35,38 +35,40 @@ public ConsoleProxyInfo(int proxyUrlPort) {
3535
3636 public ConsoleProxyInfo (boolean sslEnabled , String proxyIpAddress , int port , int proxyUrlPort , String consoleProxyUrlDomain ) {
3737 this .sslEnabled = sslEnabled ;
38+ this .proxyPort = port ;
39+ this .proxyUrlPort = proxyUrlPort ;
40+ this .proxyAddress = this .formatProxyAddress (consoleProxyUrlDomain , proxyIpAddress );
3841
3942 if (sslEnabled ) {
40- StringBuffer sb = new StringBuffer ();
41- if (consoleProxyUrlDomain .startsWith ("*" )) {
42- sb .append (proxyIpAddress );
43- for (int i = 0 ; i < proxyIpAddress .length (); i ++)
44- if (sb .charAt (i ) == '.' )
45- sb .setCharAt (i , '-' );
46- sb .append (consoleProxyUrlDomain .substring (1 ));//skip the *
47- } else {
48- //LB address
49- sb .append (consoleProxyUrlDomain );
50- }
51- proxyAddress = sb .toString ();
52- proxyPort = port ;
53- this .proxyUrlPort = proxyUrlPort ;
54-
5543 proxyImageUrl = "https://" + proxyAddress ;
56- if (proxyUrlPort != 443 )
44+ if (proxyUrlPort != 443 ) {
5745 proxyImageUrl += ":" + this .proxyUrlPort ;
58- } else {
59- proxyAddress = proxyIpAddress ;
60- if (StringUtils .isNotBlank (consoleProxyUrlDomain )) {
61- proxyAddress = consoleProxyUrlDomain ;
6246 }
63- proxyPort = port ;
64- this .proxyUrlPort = proxyUrlPort ;
6547
48+ } else {
6649 proxyImageUrl = "http://" + proxyAddress ;
67- if (proxyUrlPort != 80 )
50+ if (proxyUrlPort != 80 ) {
6851 proxyImageUrl += ":" + proxyUrlPort ;
52+ }
53+ }
54+ }
55+
56+ private String formatProxyAddress (String consoleProxyUrlDomain , String proxyIpAddress ) {
57+ StringBuffer sb = new StringBuffer ();
58+ // Domain in format *.example.com, proxy IP is 1.2.3.4 --> 1-2-3-4.example.com
59+ if (consoleProxyUrlDomain .startsWith ("*" )) {
60+ sb .append (proxyIpAddress .replaceAll ("\\ ." , "-" ));
61+ sb .append (consoleProxyUrlDomain .substring (1 )); // skip the *
62+
63+ // Otherwise we assume a valid domain if config not blank
64+ } else if (StringUtils .isNotBlank (consoleProxyUrlDomain )) {
65+ sb .append (consoleProxyUrlDomain );
66+
67+ // Blank config, we use the proxy IP
68+ } else {
69+ sb .append (proxyIpAddress );
6970 }
71+ return sb .toString ();
7072 }
7173
7274 public String getProxyAddress () {
0 commit comments