com.atlassian.confluence.security.PermissionManager.hasCreatePermission()方法的使用及代码示例

x33g5p2x  于2022-01-26 转载在 其他  
字(11.9k)|赞(0)|评价(0)|浏览(67)

本文整理了Java中com.atlassian.confluence.security.PermissionManager.hasCreatePermission()方法的一些代码示例,展示了PermissionManager.hasCreatePermission()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。PermissionManager.hasCreatePermission()方法的具体详情如下:
包路径:com.atlassian.confluence.security.PermissionManager
类名称:PermissionManager
方法名:hasCreatePermission

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)) {

相关文章