本文整理了Java中com.atlassian.confluence.security.PermissionManager.hasCreatePermission()
方法的一些代码示例,展示了PermissionManager.hasCreatePermission()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。PermissionManager.hasCreatePermission()
方法的具体详情如下:
包路径:com.atlassian.confluence.security.PermissionManager
类名称:PermissionManager
方法名:hasCreatePermission
暂无
代码示例来源:origin: com.atlassian.streams/streams-confluence-plugin
Predicate<String> canCommentOn(final AbstractPage abstractPage)
{
return username -> permissionManager.hasCreatePermission(userAccessor.getUserByName(username), abstractPage, Comment.class);
}
代码示例来源:origin: com.atlassian.confluence.plugins/confluence-business-blueprints
@GET
@Path("can-create-comment")
@Produces(MediaType.APPLICATION_JSON)
@AnonymousAllowed
public Response canCreateComment(@QueryParam("spaceKey") String spaceKey)
{
final Space space = spaceManager.getSpace(spaceKey);
if (space == null)
{
return Response.status(Response.Status.BAD_REQUEST).entity("No space found for spacekey").build();
}
final boolean canCreate = permissionManager.hasCreatePermission(getUser(), space, Comment.class);
return Response.ok(canCreate).build();
}
代码示例来源:origin: com.atlassian.streams/streams-confluence-plugin
Predicate<String> canCommentOn(final Comment comment)
{
return username -> permissionManager.hasCreatePermission(userAccessor.getUserByName(username), comment.getContainer(), Comment.class);
}
}
代码示例来源:origin: com.atlassian.confluence/confluence-studio-theme-plugin
private String buildUserInfoJsonp(final HttpServletRequest request, final ConfluenceUser user)
{
final StringBuilder json = new StringBuilder("{");
final Space space = spaceManager.getPersonalSpace(user);
final String baseUrl = applicationProperties.getBaseUrl(UrlMode.CANONICAL);
if (space != null)
{
final String urlPath = space.getUrlPath();
json.append("personalSpaceUrl:\"").append(baseUrl).append(urlPath).append("\"");
}
else
{
final boolean canCreatePersonalSpace = userAccessor.isSuperUser(user) ||
permissionManager.hasCreatePermission(user,
personalInformationManager.getOrCreatePersonalInformation(user), Space.class);
if (canCreatePersonalSpace)
{
json.append("createPersonalSpaceUrl:\"").append(baseUrl).append("/spaces/createpersonalspace.action" + "\"");
}
}
json.append("}");
// JSONP
final String callBackFunctionName = request.getParameter("callback");
if (callBackFunctionName != null)
{
json.insert(0, callBackFunctionName + "(");
json.append(")");
}
return json.toString();
}
代码示例来源:origin: com.atlassian.confluence.plugins/confluence-business-blueprints
private List<Space> computeFavouriteSpaces(List<Space> permittedGlobalSpaces)
{
if (getRemoteUser() == null)
return Collections.emptyList();
List<Space> favouriteSpaces = labelManager.getFavouriteSpaces(getRemoteUser().getName());
if (personalSpace != null)
favouriteSpaces.remove(personalSpace);
// only get favourites space which user has create page permission
if (permittedGlobalSpaces.isEmpty())
{
for (Iterator<Space> spaceIterator = favouriteSpaces.iterator(); spaceIterator.hasNext();)
{
Space space = spaceIterator.next();
if (!permissionManager.hasCreatePermission(getRemoteUser(), space, Page.class))
spaceIterator.remove();
}
}
else
{
favouriteSpaces.retainAll(permittedGlobalSpaces);
}
return favouriteSpaces;
}
代码示例来源:origin: com.atlassian.confluence.plugins/dashboard-actions
public Collection<Space> computeFavouriteSpaces(Set<Space> permittedGlobalSpaces)
{
if (getRemoteUser() == null)
return Collections.emptyList();
@SuppressWarnings("unchecked")
Set<Space> favouriteSpaces = new HashSet<Space>(labelManager.getFavouriteSpaces(getRemoteUser().getName()));
if (personalSpace != null)
favouriteSpaces.remove(personalSpace);
if (permittedGlobalSpaces.isEmpty())
{
final Class<? extends AbstractPage> clazz = "page".equals(type) ? Page.class : BlogPost.class;
for (Iterator<Space> spaceIterator = favouriteSpaces.iterator(); spaceIterator.hasNext();)
{
Space space = spaceIterator.next();
if (!permissionManager.hasCreatePermission(getRemoteUser(), space, clazz))
spaceIterator.remove();
}
}
else
{
/**
* Perform an intersection of the user's favourite spaces and the list they are allowed to create content in.
* This effectively ensures any favourites that prohibit content creation are combed out.
*/
favouriteSpaces.retainAll(permittedGlobalSpaces);
}
return favouriteSpaces;
}
代码示例来源:origin: com.atlassian.confluence.plugins/confluence-content-report-plugin
boolean canCreate = permissionManager.hasCreatePermission(getAuthenticatedUser(), space, Page.class);
templateRenderContext.put("createButtonLabel", canCreate ? macroParameters.get("createButtonLabel") : null);
代码示例来源:origin: com.atlassian.confluence.plugin/func-test
else if (permissionManager.hasCreatePermission(user, commentPage, Comment.class))
代码示例来源:origin: com.atlassian.confluence.plugins/confluence-business-blueprints
@EventListener
public void onBlueprintCreateEvent(BlueprintPageCreateEvent event)
{
ModuleCompleteKey moduleCompleteKey = event.getBlueprintKey();
if (!SHARELINKS_BLUEPRINT_KEY.equals(moduleCompleteKey))
{
return;
}
Page blueprintPage = event.getPage();
Map<String, Object> context = event.getContext();
String comment = (String) context.get("comment");
String shareWith = (String) context.get("sharewith");
String label = (String) context.get("label");
if (logger.isDebugEnabled())
{
logger.debug("Event caught with context {}", event.getContext());
}
if (permissionManager.hasCreatePermission(getUser(), event.getPage().getSpace(), Comment.class))
{
addCommentIfNotBlank(blueprintPage, comment);
}
addLabelIfNotBlank(blueprintPage, label);
//send share-page request
shareWithUsers(blueprintPage, shareWith, comment);
}
代码示例来源:origin: com.atlassian.confluence/confluence-studio-theme-plugin
@Override
public void doPost(final HttpServletRequest request, final HttpServletResponse response)
throws ServletException, IOException
{
final String username = userManager.getRemoteUsername(request);
if (StringUtils.isBlank(username))
{
HttpUtils.sendTextResponse(response, buildJson("json.not.logged.in", getStudioLoginUrl(request)),
HttpServletResponse.SC_OK, HttpUtils.CONTENT_JAVASCRIPT);
return;
}
final ConfluenceUser user = userAccessor.getUserByName(username);
if (!permissionManager.hasCreatePermission(user, PermissionManager.TARGET_APPLICATION, UserStatus.class))
{
HttpUtils.sendTextResponse(response, buildJson("json.update.userstatus.permission.error.msg"),
HttpServletResponse.SC_OK, HttpUtils.CONTENT_JAVASCRIPT);
return;
}
final UserStatus newStatus = userStatusManager.saveUserStatus(user, request.getParameter(REQ_PARAM_TEXT));
HttpUtils.sendTextResponse(response, buildJson(newStatus), HttpServletResponse.SC_OK,
HttpUtils.CONTENT_JAVASCRIPT);
}
代码示例来源:origin: com.atlassian.streams/streams-confluence-plugin
if (!permissionManager.hasCreatePermission(user, page, Comment.class))
代码示例来源:origin: com.atlassian.confluence.extra.webdav/webdav-plugin
Page destinationPage = pageManager.getPage(destinationSpaceKey, destinationPageName);
if (permissionManager.hasCreatePermission(AuthenticatedUserThreadLocal.getUser(),
destinationPage,
Attachment.class)) {
代码示例来源:origin: com.atlassian.confluence.extra.webdav/webdav-plugin
if (permissionManager.hasCreatePermission(user, thisSpace, Page.class)) {
createPage(resourceName);
} else {
boolean isPermitted = isSpaceDescription
? permissionManager.hasPermission(user, Permission.EDIT, thisSpace)
: permissionManager.hasCreatePermission(user, spaceDescription, Attachment.class);
代码示例来源:origin: com.atlassian.confluence/confluence-studio-theme-plugin
private String getPersonalSpaceRedirectUrl()
{
final String baseUrl = applicationProperties.getBaseUrl(UrlMode.CANONICAL);
final ConfluenceUser user = AuthenticatedUserThreadLocal.get();
if (user == null)
{
return baseUrl + "/login.action";
}
final Space space = spaceManager.getPersonalSpace(user);
if (space != null)
{
return baseUrl + space.getUrlPath();
}
else
{
final boolean canCreatePersonalSpace = userAccessor.isSuperUser(user) ||
permissionManager.hasCreatePermission(user,
personalInformationManager.getOrCreatePersonalInformation(user), Space.class);
if (canCreatePersonalSpace)
{
return baseUrl + "/spaces/createpersonalspace.action";
}
}
return baseUrl + "/display/~" + user.getName();
}
代码示例来源:origin: com.atlassian.confluence.extra.chart/chart-plugin
if (StringUtils.equals(NEW, attachmentVersion) && !permissionManager.hasCreatePermission(currentUser, theAttachmentContentEntity, Attachment.class))
throw new MacroExecutionException(String.format("Export not valid. Not authorized to add %s from page: %s (%d)", theAttachmentFileName, theAttachmentContentEntity.getTitle(), theAttachmentContentEntity.getId()));
&& !(permissionManager.hasPermission(currentUser, Permission.REMOVE, theAttachment) && permissionManager.hasCreatePermission(currentUser, theAttachmentContentEntity, Attachment.class)))
throw new MacroExecutionException(String.format("Export not valid. Not authorized to recreate %s from page: %s (%d)", theAttachmentFileName, theAttachmentContentEntity.getTitle(), theAttachmentContentEntity.getId()));
代码示例来源:origin: com.atlassian.confluence.extra.webdav/webdav-plugin
if (permissionManager.hasCreatePermission(user, thisPage.getSpace(), Page.class)) {
ResourceStates resourceStates = ((ConfluenceDavSession) getSession()).getResourceStates();
boolean isPermitted = isPageContentAttachment
? permissionManager.hasPermission(user, Permission.EDIT, thisPage)
: permissionManager.hasCreatePermission(user, thisPage, Attachment.class);
代码示例来源:origin: com.atlassian.confluence.extra.webdav/webdav-plugin
Page destinationPage = pageManager.getPage(destinationSpaceKey, destinationPageName);
if (permissionManager.hasCreatePermission(user, destinationPage, Attachment.class)
&& permissionManager.hasPermission(user, Permission.REMOVE, attachment)) {
getAttachmentManager().moveAttachment(attachment, destinationAttachmentName, destinationPage);
代码示例来源:origin: com.atlassian.confluence/confluence-studio-theme-plugin
/**
* Validates that project can be created
*/
@Override
public void validate(MessageCollection messages, StudioProject project)
{
User user = AuthenticatedUserThreadLocal.get();
String username = user == null ? "anonymous" : user.getName();
if (!permissionManager.hasCreatePermission(user, PermissionManager.TARGET_APPLICATION, Space.class))
{
messages.addMessage("studio.project.create.no.create.permission", username);
}
final Map<Class<? extends ApplicationType>,ApplicationLink> ondemandApplicationLinks = appLinksMaintainer.getOndemandApplicationLinks();
if (ondemandApplicationLinks.get(JiraApplicationType.class) == null)
{
messages.addMessage("studio.project.create.no.primary.instance", ApplicationTypeToDefaultDisplayNameFunction.instance.apply(JiraApplicationType.class));
}
if (project.hasFeCru() && ondemandApplicationLinks.get(FishEyeCrucibleApplicationType.class) == null)
{
messages.addMessage("studio.project.create.no.primary.instance", ApplicationTypeToDefaultDisplayNameFunction.instance.apply(FishEyeCrucibleApplicationType.class));
}
if (!Space.isValidGlobalSpaceKey(project.getKey()))
{
messages.addMessage("studio.project.create.conf.invalid.spacekey", project.getKey());
}
if (spaceManager.getSpace(project.getKey()) != null)
{
messages.addMessage("studio.project.create.conf.duplicate.space", project.getKey());
}
}
代码示例来源:origin: com.atlassian.confluence.plugins.socialbookmarking/socialbookmarking
if (!permissionManager.hasCreatePermission(currentUser, bookmarkSpace, Page.class))
addActionError(new StringBuilder(getText("bookmark.no.permission.to.create")).append(' ').append(bookmarkSpace.getName()).append(' ').append(getText("bookmark.space")).toString());
else if (null != pageManager.getPage(bookmarkSpace.getKey(), bookmarkTitle))
代码示例来源:origin: com.atlassian.confluence.extra.webdav/webdav-plugin
User user = AuthenticatedUserThreadLocal.getUser();
if (permissionManager.hasCreatePermission(AuthenticatedUserThreadLocal.getUser(),
spaceManager.getSpace(spaceKey),
Page.class)) {
内容来源于网络,如有侵权,请联系作者删除!