in server/src/jetbrains/buildServer/queueManager/pages/QueueStateChangePageController.java [48:83]
public QueueStateChangePageController(@NotNull final PagePlaces pagePlaces,
@NotNull final PluginDescriptor descriptor,
@NotNull final SecurityContext securityContext,
@NotNull final QueueStateManager queueStateManager,
@NotNull final ServerResponsibility responsibility,
@NotNull final WebControllerManager controllerManager) {
mySecurityContext = securityContext;
myQueueStateManager = queueStateManager;
myResponsibility = responsibility;
myPluginDescriptor = descriptor;
final SimplePageExtension classicPageExtension = new SimplePageExtension(pagePlaces) {
@Override
public boolean isAvailable(@NotNull final HttpServletRequest request) {
return isEnoughPermissions()
&& WebUtil.getPathWithoutAuthenticationType(WebUtil.getPathWithoutContext(request, WebUtil.getOriginalRequestUrl(request))).startsWith(EXTENSION_AVAILABILITY_URL);
}
};
classicPageExtension.setPlaceId(PlaceId.BEFORE_CONTENT);
classicPageExtension.setPluginName(descriptor.getPluginName());
classicPageExtension.setIncludeUrl(EXTENSION_INCLUDE_URL);
classicPageExtension.register();
final SimplePageExtension sakuraPageExtension = new SimplePageExtension(pagePlaces) {
@Override
public boolean isAvailable(@NotNull final HttpServletRequest request) {
return isEnoughPermissions();
}
};
sakuraPageExtension.setPlaceId(new PlaceId("SAKURA_QUEUE_ACTIONS"));
sakuraPageExtension.setPluginName(descriptor.getPluginName());
sakuraPageExtension.setIncludeUrl(EXTENSION_INCLUDE_URL);
sakuraPageExtension.register();
controllerManager.registerController(EXTENSION_INCLUDE_URL, this);
}