Class FileBrowseController
- java.lang.Object
-
- org.springframework.context.support.ApplicationObjectSupport
-
- org.springframework.web.context.support.WebApplicationObjectSupport
-
- org.springframework.web.servlet.support.WebContentGenerator
-
- org.springframework.web.servlet.mvc.AbstractController
-
- jetbrains.buildServer.controllers.BaseController
-
- jetbrains.buildServer.controllers.BaseFormXmlController
-
- jetbrains.buildServer.controllers.MultipartFormController
-
- jetbrains.buildServer.controllers.FileBrowseController
-
- All Implemented Interfaces:
org.springframework.beans.factory.Aware
,org.springframework.context.ApplicationContextAware
,org.springframework.web.context.ServletContextAware
,org.springframework.web.servlet.mvc.Controller
public abstract class FileBrowseController extends MultipartFormController
- Since:
- 7.0
- Author:
- Maxim Podkolzine (maxim.podkolzine@jetbrains.com)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static interface
FileBrowseController.Action
static interface
FileBrowseController.FileActionCallback
protected class
FileBrowseController.FileBrowseBean
static class
FileBrowseController.FileOperations
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,FileBrowseController.Action>
myActions
protected FileBrowseController.FileActionCallback
myFileActionCallback
protected java.io.File
myRootDirectory
protected SecurityContext
mySecurityContext
protected WebAccess
myWebAccess
-
Fields inherited from class jetbrains.buildServer.controllers.BaseController
myServer
-
-
Constructor Summary
Constructors Constructor Description FileBrowseController(SBuildServer server, SecurityContext securityContext, WebControllerManager webControllerManager, AuthorizationInterceptor interceptor, WebAccessService webAccessService, java.io.File rootDirectory, java.lang.String urlPath, FileBrowseController.FileActionCallback fileActionCallback)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected java.io.File
checkAndGetFile(java.lang.String path)
protected boolean
checkPermissions(AuthorityHolder authorityHolder)
protected void
deleteFile(java.lang.String fileName)
protected org.springframework.web.servlet.ModelAndView
doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
Implement this method to process GET requests.protected org.springframework.web.servlet.ModelAndView
doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
protected org.springframework.web.servlet.ModelAndView
error(org.springframework.web.servlet.ModelAndView modelAndView, java.lang.String error)
static java.lang.String
fixSlash(java.lang.String path)
protected java.io.File
getFileFromRequest(javax.servlet.http.HttpServletRequest request)
protected FileBrowseController.FileOperations
getFileOperations()
protected abstract Permission
getPermission()
protected abstract java.lang.String
getRootDirectoryDescription()
protected LazyTreeElementRenderer
getTreeElementRenderer()
protected abstract java.lang.String
getTreeName()
protected abstract java.lang.String
getUploadResponseJsBase()
protected abstract WebAccessHelper
getWebAccessHelper()
protected boolean
isDeleteSupported()
protected boolean
isEditSupported()
protected boolean
isUploadSupported()
protected boolean
isUploadToAnySubdirectory()
-
Methods inherited from class jetbrains.buildServer.controllers.MultipartFormController
doHandle, doPost, getMultipartFileOrFail
-
Methods inherited from class jetbrains.buildServer.controllers.BaseFormXmlController
addMessage, bindFromRequest, forgetFormBean, forgetFormBean, getOrCreateFormBean, getOrCreateFormBean, isInitPageRequest, selfRedirectOnInit, writeErrors, writeRedirect
-
Methods inherited from class jetbrains.buildServer.controllers.BaseController
getJspFromRequest, getOrCreateMessages, handleRequest, handleRequestInternal, isGet, isPost, redirectTo, setExceptionResolvers, simpleView
-
Methods inherited from class org.springframework.web.servlet.mvc.AbstractController
isSynchronizeOnSession, setSynchronizeOnSession
-
Methods inherited from class org.springframework.web.servlet.support.WebContentGenerator
applyCacheControl, applyCacheSeconds, applyCacheSeconds, cacheForSeconds, cacheForSeconds, checkAndPrepare, checkAndPrepare, checkRequest, getAllowHeader, getCacheControl, getCacheSeconds, getSupportedMethods, getVaryByRequestHeaders, isAlwaysMustRevalidate, isRequireSession, isUseCacheControlHeader, isUseCacheControlNoStore, isUseExpiresHeader, prepareResponse, preventCaching, setAlwaysMustRevalidate, setCacheControl, setCacheSeconds, setRequireSession, setSupportedMethods, setUseCacheControlHeader, setUseCacheControlNoStore, setUseExpiresHeader, setVaryByRequestHeaders
-
Methods inherited from class org.springframework.web.context.support.WebApplicationObjectSupport
getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, initServletContext, isContextRequired, setServletContext
-
-
-
-
Field Detail
-
mySecurityContext
@NotNull protected final SecurityContext mySecurityContext
-
myActions
@NotNull protected final java.util.Map<java.lang.String,FileBrowseController.Action> myActions
-
myRootDirectory
@NotNull protected final java.io.File myRootDirectory
-
myFileActionCallback
@NotNull protected final FileBrowseController.FileActionCallback myFileActionCallback
-
myWebAccess
protected WebAccess myWebAccess
-
-
Constructor Detail
-
FileBrowseController
public FileBrowseController(@NotNull SBuildServer server, @NotNull SecurityContext securityContext, @NotNull WebControllerManager webControllerManager, @NotNull AuthorizationInterceptor interceptor, @NotNull WebAccessService webAccessService, @NotNull java.io.File rootDirectory, @NotNull java.lang.String urlPath, @NotNull FileBrowseController.FileActionCallback fileActionCallback)
-
-
Method Detail
-
getPermission
@NotNull protected abstract Permission getPermission()
-
checkPermissions
protected boolean checkPermissions(AuthorityHolder authorityHolder)
-
getTreeElementRenderer
@NotNull protected LazyTreeElementRenderer getTreeElementRenderer()
-
getTreeName
@NotNull protected abstract java.lang.String getTreeName()
-
getRootDirectoryDescription
@NotNull protected abstract java.lang.String getRootDirectoryDescription()
-
getWebAccessHelper
@NotNull protected abstract WebAccessHelper getWebAccessHelper()
-
isUploadSupported
protected boolean isUploadSupported()
-
isUploadToAnySubdirectory
protected boolean isUploadToAnySubdirectory()
-
getUploadResponseJsBase
@NotNull protected abstract java.lang.String getUploadResponseJsBase()
-
isDeleteSupported
protected boolean isDeleteSupported()
-
deleteFile
protected void deleteFile(@NotNull java.lang.String fileName)
-
isEditSupported
protected boolean isEditSupported()
-
getFileFromRequest
@Nullable protected java.io.File getFileFromRequest(@NotNull javax.servlet.http.HttpServletRequest request)
-
checkAndGetFile
@NotNull protected java.io.File checkAndGetFile(java.lang.String path)
-
doGet
protected org.springframework.web.servlet.ModelAndView doGet(@NotNull javax.servlet.http.HttpServletRequest request, @NotNull javax.servlet.http.HttpServletResponse response)
Description copied from class:BaseFormXmlController
Implement this method to process GET requests. Usually on GET request a form bean is created and a page is shown.- Overrides:
doGet
in classMultipartFormController
- Parameters:
request
- HTTP requestresponse
- HTTP response- Returns:
- model and view components
-
doPost
protected org.springframework.web.servlet.ModelAndView doPost(@NotNull javax.servlet.http.HttpServletRequest request, @NotNull javax.servlet.http.HttpServletResponse response)
- Specified by:
doPost
in classMultipartFormController
-
error
@NotNull protected org.springframework.web.servlet.ModelAndView error(@NotNull org.springframework.web.servlet.ModelAndView modelAndView, @NotNull java.lang.String error)
-
fixSlash
@Nullable public static java.lang.String fixSlash(@Nullable java.lang.String path)
-
getFileOperations
@NotNull protected FileBrowseController.FileOperations getFileOperations()
-
-