CCM NG/ccm-core: Removed constraints for allowed characters in the name of a party
git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@4734 8810af33-2d31-482b-a856-94f89814c4dfccm-docs
parent
31277c9e29
commit
e823c01fe0
|
|
@ -92,7 +92,7 @@ public class Party implements Serializable {
|
||||||
*/
|
*/
|
||||||
@Column(name = "NAME", length = 256, nullable = false)
|
@Column(name = "NAME", length = 256, nullable = false)
|
||||||
@NotNull
|
@NotNull
|
||||||
@Pattern(regexp = "[a-zA-Z0-9\\-_]*")
|
// @Pattern(regexp = "[a-zA-Z0-9\\-_\\.]*")
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -74,14 +74,23 @@ import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||||
+ "ORDER BY u.name, "
|
+ "ORDER BY u.name, "
|
||||||
+ " u.familyName, "
|
+ " u.familyName, "
|
||||||
+ " u.givenName, "
|
+ " u.givenName, "
|
||||||
+ " u.primaryEmailAddress.address"),
|
+ " u.primaryEmailAddress.address")
|
||||||
|
,
|
||||||
|
@NamedQuery(name = "User.countByName",
|
||||||
|
query = "SELECT COUNT(u) FROM User u WHERE u.name = :name")
|
||||||
|
,
|
||||||
@NamedQuery(name = "User.findByEmailAddress",
|
@NamedQuery(name = "User.findByEmailAddress",
|
||||||
query = "SELECT u FROM User u WHERE "
|
query = "SELECT u FROM User u WHERE "
|
||||||
+ "u.primaryEmailAddress.address = :emailAddress "
|
+ "u.primaryEmailAddress.address = :emailAddress "
|
||||||
+ "ORDER BY u.name, "
|
+ "ORDER BY u.name, "
|
||||||
+ " u.familyName, "
|
+ " u.familyName, "
|
||||||
+ " u.givenName, "
|
+ " u.givenName, "
|
||||||
+ " u.primaryEmailAddress.address"),
|
+ " u.primaryEmailAddress.address")
|
||||||
|
,
|
||||||
|
@NamedQuery(name = "User.countByPrimaryEmailAddress",
|
||||||
|
query = "SELECT COUNT(u) FROM User u "
|
||||||
|
+ "WHERE u.primaryEmailAddress.address = :emailAddress")
|
||||||
|
,
|
||||||
@NamedQuery(
|
@NamedQuery(
|
||||||
name = "User.filterByNameAndEmail",
|
name = "User.filterByNameAndEmail",
|
||||||
query = "SELECT u FROM User u WHERE "
|
query = "SELECT u FROM User u WHERE "
|
||||||
|
|
@ -92,7 +101,8 @@ import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||||
+ "ORDER BY u.name,"
|
+ "ORDER BY u.name,"
|
||||||
+ "u.familyName, "
|
+ "u.familyName, "
|
||||||
+ "u.givenName, "
|
+ "u.givenName, "
|
||||||
+ "u.primaryEmailAddress.address"),
|
+ "u.primaryEmailAddress.address")
|
||||||
|
,
|
||||||
@NamedQuery(
|
@NamedQuery(
|
||||||
name = "User.findAllOrderedByUsername",
|
name = "User.findAllOrderedByUsername",
|
||||||
query = "SELECT u FROM User u ORDER BY u.name, "
|
query = "SELECT u FROM User u ORDER BY u.name, "
|
||||||
|
|
@ -105,7 +115,8 @@ import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||||
name = "User.withGroupAndRoleMemberships",
|
name = "User.withGroupAndRoleMemberships",
|
||||||
attributeNodes = {
|
attributeNodes = {
|
||||||
@NamedAttributeNode(
|
@NamedAttributeNode(
|
||||||
value = "groupMemberships"),
|
value = "groupMemberships")
|
||||||
|
,
|
||||||
@NamedAttributeNode(
|
@NamedAttributeNode(
|
||||||
value = "roleMemberships",
|
value = "roleMemberships",
|
||||||
subgraph = "role")},
|
subgraph = "role")},
|
||||||
|
|
@ -115,7 +126,8 @@ import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||||
attributeNodes = {
|
attributeNodes = {
|
||||||
@NamedAttributeNode(value = "role",
|
@NamedAttributeNode(value = "role",
|
||||||
subgraph = "permissions")
|
subgraph = "permissions")
|
||||||
}),
|
})
|
||||||
|
,
|
||||||
@NamedSubgraph(
|
@NamedSubgraph(
|
||||||
name = "permissions",
|
name = "permissions",
|
||||||
attributeNodes = {
|
attributeNodes = {
|
||||||
|
|
|
||||||
|
|
@ -87,7 +87,7 @@ public class UserManager {
|
||||||
@Transactional(Transactional.TxType.REQUIRED)
|
@Transactional(Transactional.TxType.REQUIRED)
|
||||||
public User createUser(final String givenName,
|
public User createUser(final String givenName,
|
||||||
final String familyName,
|
final String familyName,
|
||||||
@Pattern(regexp = "[a-zA-Z0-9\\-_]*")
|
// @Pattern(regexp = "[a-zA-Z0-9\\-_]*")
|
||||||
final String name,
|
final String name,
|
||||||
final String emailAddress,
|
final String emailAddress,
|
||||||
final String password) {
|
final String password) {
|
||||||
|
|
|
||||||
|
|
@ -96,6 +96,16 @@ public class UserRepository extends AbstractEntityRepository<Long, User> {
|
||||||
return getSingleResult(query);
|
return getSingleResult(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isNameInUse(final String name) {
|
||||||
|
|
||||||
|
final TypedQuery<Long> query = getEntityManager()
|
||||||
|
.createNamedQuery("User.countByName", Long.class);
|
||||||
|
query.setParameter("name", name);
|
||||||
|
|
||||||
|
final Long result = query.getSingleResult();
|
||||||
|
return result > 0;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Finds user by the primary email address.
|
* Finds user by the primary email address.
|
||||||
*
|
*
|
||||||
|
|
@ -132,6 +142,16 @@ public class UserRepository extends AbstractEntityRepository<Long, User> {
|
||||||
return getSingleResult(query);
|
return getSingleResult(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isEmailAddressInUse(final String emailAddress) {
|
||||||
|
|
||||||
|
final TypedQuery<Long> query = getEntityManager()
|
||||||
|
.createNamedQuery("User.countByPrimaryEmailAddress", Long.class);
|
||||||
|
query.setParameter("emailAddress", emailAddress);
|
||||||
|
|
||||||
|
final Long result = query.getSingleResult();
|
||||||
|
return result > 0;
|
||||||
|
}
|
||||||
|
|
||||||
public List<User> filtered(final String term) {
|
public List<User> filtered(final String term) {
|
||||||
final TypedQuery<User> query = getEntityManager().createNamedQuery(
|
final TypedQuery<User> query = getEntityManager().createNamedQuery(
|
||||||
"User.filterByNameAndEmail", User.class);
|
"User.filterByNameAndEmail", User.class);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue