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 class
FileBrowseController.DirectWriteFileOperations
static interface
FileBrowseController.FileActionCallback
protected class
FileBrowseController.FileBrowseBean
static interface
FileBrowseController.FileOperations
static class
FileBrowseController.PersistQueueAwareFileOperations
-
Field Summary
Fields Modifier and Type Field Description protected Map<String,FileBrowseController.Action>
myActions
protected FileBrowseController.FileActionCallback
myFileActionCallback
protected 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, File rootDirectory, String urlPath, FileBrowseController.FileActionCallback fileActionCallback, ServerPaths serverPaths)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected File
checkAndGetFile(String path)
protected boolean
checkPermissions(AuthorityHolder authorityHolder)
protected void
deleteFile(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, String error)
static String
fixSlash(String path)
protected FileBrowseController.DirectWriteFileOperations
getDirectWriteFileOperations()
protected File
getFileFromRequest(javax.servlet.http.HttpServletRequest request)
protected abstract Permission
getPermission()
protected abstract String
getRootDirectoryDescription()
protected LazyTreeElementRenderer
getTreeElementRenderer()
protected abstract String
getTreeName()
protected abstract 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
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 Map<String,FileBrowseController.Action> myActions
-
myRootDirectory
@NotNull protected final 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 File rootDirectory, @NotNull String urlPath, @NotNull FileBrowseController.FileActionCallback fileActionCallback, @NotNull ServerPaths serverPaths)
-
-
Method Detail
-
getPermission
@NotNull protected abstract Permission getPermission()
-
checkPermissions
protected boolean checkPermissions(AuthorityHolder authorityHolder)
-
getTreeElementRenderer
@NotNull protected LazyTreeElementRenderer getTreeElementRenderer()
-
getTreeName
@NotNull protected abstract String getTreeName()
-
getRootDirectoryDescription
@NotNull protected abstract String getRootDirectoryDescription()
-
getWebAccessHelper
@NotNull protected abstract WebAccessHelper getWebAccessHelper()
-
isUploadSupported
protected boolean isUploadSupported()
-
isUploadToAnySubdirectory
protected boolean isUploadToAnySubdirectory()
-
getUploadResponseJsBase
@NotNull protected abstract String getUploadResponseJsBase()
-
isDeleteSupported
protected boolean isDeleteSupported()
-
deleteFile
protected void deleteFile(@NotNull String fileName)
-
isEditSupported
protected boolean isEditSupported()
-
getFileFromRequest
@Nullable protected File getFileFromRequest(@NotNull javax.servlet.http.HttpServletRequest request)
-
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 String error)
-
getDirectWriteFileOperations
@NotNull protected FileBrowseController.DirectWriteFileOperations getDirectWriteFileOperations()
-
-