1 19 20 package com.sslexplorer.networkplaces; 21 22 import java.util.List ; 23 24 import javax.servlet.http.HttpServletRequest ; 25 26 import com.sslexplorer.boot.Util; 27 import com.sslexplorer.core.CoreUtil; 28 import com.sslexplorer.navigation.RequiresSessionPasswordAbstractFavoriteItem; 29 import com.sslexplorer.vfs.utils.URI; 30 import com.sslexplorer.vfs.webdav.DAVUtilities; 31 32 38 public class NetworkPlaceItem extends RequiresSessionPasswordAbstractFavoriteItem { 39 40 43 public final static int WINDOW_WIDTH = 790; 44 45 48 public final static int WINDOW_HEIGHT = 480; 49 50 52 private String mountPath; 53 54 61 public NetworkPlaceItem(NetworkPlace networkPlace, String mountPath, List policies, boolean requiresSessionPassword) { 62 super(networkPlace, policies, requiresSessionPassword); 63 this.mountPath = mountPath; 64 } 65 66 70 public String getOnClick(int policy, HttpServletRequest request) { 71 return ""; 72 } 73 74 78 public String getLink(int policy, String referer, HttpServletRequest request) { 79 return "launchNetworkPlace.do?policy=" + 80 policy + "&resourceId=" + getResource().getResourceId() + 81 "&returnTo=" + Util.urlEncode(Util.isNullOrTrimmedBlank(referer) ? CoreUtil.getRealRequestURI(request) : referer); 82 } 83 84 88 public String getTarget() { 89 return "_blank"; 90 } 91 92 98 public String getWebFolderPath(int policy, HttpServletRequest request) { 99 if (this.getRequiresSessionPassword()) { 100 103 return "/promptForSessionPassword.do?forwardTo=" + 104 DAVUtilities.encodePath(getFullWebFolderPath(policy, request)); 105 } 106 return getFullWebFolderPath(policy, request); 107 } 108 109 112 public String getMountPath() { 113 return mountPath; 114 } 115 116 119 public void setMountPath(String mountPath) { 120 this.mountPath = mountPath; 121 } 122 123 127 public String getFavoriteName() { 128 return getResource().getResourceName(); 129 } 130 131 135 public String getFavoriteSubType() { 136 try { 137 return new URI(((NetworkPlace) getResource()).getPath()).getScheme().toUpperCase(); 138 } catch (Exception e) { 139 return ""; 140 } 141 } 142 143 147 public String getSmallIconPath(HttpServletRequest request) { 148 return CoreUtil.getThemePath(request.getSession()) + "/images/actions/runNetworkPlace.gif"; 149 } 150 151 155 public String getLargeIconPath(HttpServletRequest request) { 156 return CoreUtil.getThemePath(request.getSession()) + "/images/actions/runNetworkPlaceLarge.gif"; 157 } 158 159 private String getFullWebFolderPath(int policy, HttpServletRequest request) { 160 StringBuffer buf = new StringBuffer (); 162 buf.append(request.getScheme()); 163 buf.append("://"); 164 int port = request.getServerPort(); 165 buf.append(request.getServerName()); 166 if( ( port == 443 && !request.getScheme().equals("https") ) || 167 ( port == 80 && !request.getScheme().equals("http") ) || 168 ( port != 80 && port != 443 ) ) { 169 buf.append(":"); 170 buf.append(port); 171 } 172 buf.append("/fs/"); 173 buf.append(mountPath); 174 return buf.toString(); 175 176 } 177 }
| Popular Tags
|