Mega Code Archive

 
Categories / Java / GWT
 

GWT window utility

/*  * Copyright 2006 Robert Hanson <iamroberthanson AT gmail.com>  *   * Licensed under the Apache License, Version 2.0 (the "License");  * you may not use this file except in compliance with the License.  * You may obtain a copy of the License at  *   *    http://www.apache.org/licenses/LICENSE-2.0  *   * Unless required by applicable law or agreed to in writing, software  * distributed under the License is distributed on an "AS IS" BASIS,  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  * See the License for the specific language governing permissions and  * limitations under the License.  */ package org.gwtwidgets.client.util; public class WindowUtils {     public static Location getLocation ()     {         Location result = new Location();         result.setHash(getHash());         result.setHost(getHost());         result.setHostName(getHostName());         result.setHref(getHref());         result.setPath(getPath());         result.setPort(getPort());         result.setProtocol(getProtocol());         result.setQueryString(getQueryString());         return result;     }     private static native String getQueryString () /*-{         return $wnd.location.search;     }-*/;     private static native String getProtocol () /*-{         return $wnd.location.protocol;     }-*/;     private static native String getPort () /*-{         return $wnd.location.port;     }-*/;     private static native String getPath () /*-{         return $wnd.location.pathname;     }-*/;     private static native String getHref () /*-{         return $wnd.location.href;     }-*/;     private static native String getHostName () /*-{         return $wnd.location.hostname;     }-*/;     private static native String getHost () /*-{         return $wnd.location.host;     }-*/;     private static native String getHash () /*-{         return $wnd.location.hash;     }-*/;      } ///////////////////////////////// /*  * Copyright 2006 Robert Hanson <iamroberthanson AT gmail.com>  *   * Licensed under the Apache License, Version 2.0 (the "License");  * you may not use this file except in compliance with the License.  * You may obtain a copy of the License at  *   *    http://www.apache.org/licenses/LICENSE-2.0  *   * Unless required by applicable law or agreed to in writing, software  * distributed under the License is distributed on an "AS IS" BASIS,  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  * See the License for the specific language governing permissions and  * limitations under the License.  */ package org.gwtwidgets.client.util; import java.util.HashMap; import java.util.Map; public class Location {     private String hash;     private String host;     private String hostName;     private String href;     private String path;     private String port;     private String protocol;     private String queryString;     private HashMap paramMap;     public String getHash ()     {         return hash;     }     public String getHost ()     {         return host;     }     public String getHostName ()     {         return hostName;     }     public String getHref ()     {         return href;     }     public String getPath ()     {         return path;     }     public String getPort ()     {         return port;     }     public String getProtocol ()     {         return protocol;     }     public String getQueryString ()     {         return queryString;     }     protected void setHash (String hash)     {         this.hash = hash;     }     protected void setHost (String host)     {         this.host = host;     }     protected void setHostName (String hostName)     {         this.hostName = hostName;     }     protected void setHref (String href)     {         this.href = href;     }     protected void setPath (String path)     {         this.path = path;     }     protected void setPort (String port)     {         this.port = port;     }     protected void setProtocol (String protocol)     {         this.protocol = protocol;     }     protected void setQueryString (String queryString)     {         this.queryString = queryString;         paramMap = new HashMap();                  if (queryString != null && queryString.length() > 1) {             String qs = queryString.substring(1);             String[] kvPairs = qs.split("&");             for (int i = 0; i < kvPairs.length; i++) {                 String[] kv = kvPairs[i].split("=");                 if (kv.length > 1) {                     paramMap.put(kv[0], unescape(kv[1]));                 }                 else {                     paramMap.put(kv[0], "");                 }             }         }     }          private native String unescape (String val) /*-{         return unescape(val);     }-*/;     public String getParameter (String name)     {         return (String) paramMap.get(name);     }     public Map getParameterMap ()     {         return paramMap;     } }