DefaultUserAccessor中的CreateUser

时间:2013-05-21 17:50:26

标签: java development-environment confluence

有人可以解释一下Confuence中CreateUser(String)和CreateUser(User,Credential)之间的区别。如果用户不在组中,我想创建一个用于汇合的用户。汇合文档中没有信息。 :(

我编写了这样的代码,但不确定它是否会在同一行中接受两次createUser方法。

userAccessor.createUser(userAccessor.createUser(username), Credential.encrypted(password));

我猜,如果在执行createUser内部,那么它会在外部父createUser上抛出一个异常,因为它试图再次创建同一个用户?

请告诉我你的想法

由于 塞缪尔。

1 个答案:

答案 0 :(得分:0)

新的createUser(User, Credential)方法取代了旧的createUser(String)方法,因此您应该使用前者并构建具有所有详细信息的用户:

User user = userAccessor.createUser(new DefaultUser("mryall", "Matt Ryall", "matt@mattryall.net"),
    Credential.unencrypted("secret"));

拥有此API的原因是为了减少创建用户所需的调用次数,并修复潜在竞争条件,即使用用户名创建用户但其他字段为空(名称,电子邮件,密码)

整个API记录很差。我在Atlassian的Confluence团队工作 - 所以我很高兴!我们会尝试解决此问题。