org.cloudfoundry.identity.uaa.scim.jdbc
Class JdbcScimUserProvisioning

java.lang.Object
  extended by org.cloudfoundry.identity.uaa.rest.jdbc.AbstractQueryable<ScimUser>
      extended by org.cloudfoundry.identity.uaa.scim.jdbc.JdbcScimUserProvisioning
All Implemented Interfaces:
Queryable<ScimUser>, ResourceManager<ScimUser>, ScimUserProvisioning

public class JdbcScimUserProvisioning
extends AbstractQueryable<ScimUser>
implements ScimUserProvisioning

Author:
Luke Taylor, Dave Syer

Field Summary
static String ALL_usetre
           
static String CHANGE_PASSWORD_SQL
           
static String CREATE_USER_SQL
           
static String DEACTIVATE_USER_SQL
           
static String DELETE_USER_SQL
           
static String ID_FOR_DELETED_USER_SQL
           
protected  org.springframework.jdbc.core.JdbcTemplate jdbcTemplate
           
static String READ_PASSWORD_SQL
           
static String UPDATE_USER_SQL
           
static String USER_BY_ID_QUERY
           
static String USER_FIELDS
           
 
Constructor Summary
JdbcScimUserProvisioning(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate, JdbcPagingListFactory pagingListFactory)
           
 
Method Summary
 boolean changePassword(String id, String oldPassword, String newPassword)
           
 ScimUser create(ScimUser user)
           
 ScimUser createUser(ScimUser user, String password)
           
 ScimUser delete(String id, int version)
           
protected  String getBaseSqlQuery()
           
 List<ScimUser> query(String filter, String sortBy, boolean ascending)
           
 ScimUser retrieve(String id)
           
 List<ScimUser> retrieveAll()
           
 void setDeactivateOnDelete(boolean deactivateOnDelete)
           
 void setPasswordEncoder(org.springframework.security.crypto.password.PasswordEncoder passwordEncoder)
          The encoder used to hash passwords before storing them in the database.
 void setPasswordValidator(PasswordValidator passwordValidator)
           
 ScimUser update(String id, ScimUser user)
           
 
Methods inherited from class org.cloudfoundry.identity.uaa.rest.jdbc.AbstractQueryable
query, setPageSize, setQueryConverter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.cloudfoundry.identity.uaa.rest.Queryable
query
 

Field Detail

USER_FIELDS

public static final String USER_FIELDS
See Also:
Constant Field Values

CREATE_USER_SQL

public static final String CREATE_USER_SQL
See Also:
Constant Field Values

UPDATE_USER_SQL

public static final String UPDATE_USER_SQL
See Also:
Constant Field Values

DEACTIVATE_USER_SQL

public static final String DEACTIVATE_USER_SQL
See Also:
Constant Field Values

DELETE_USER_SQL

public static final String DELETE_USER_SQL
See Also:
Constant Field Values

ID_FOR_DELETED_USER_SQL

public static final String ID_FOR_DELETED_USER_SQL
See Also:
Constant Field Values

CHANGE_PASSWORD_SQL

public static final String CHANGE_PASSWORD_SQL
See Also:
Constant Field Values

READ_PASSWORD_SQL

public static final String READ_PASSWORD_SQL
See Also:
Constant Field Values

USER_BY_ID_QUERY

public static final String USER_BY_ID_QUERY
See Also:
Constant Field Values

ALL_usetre

public static final String ALL_usetre
See Also:
Constant Field Values

jdbcTemplate

protected final org.springframework.jdbc.core.JdbcTemplate jdbcTemplate
Constructor Detail

JdbcScimUserProvisioning

public JdbcScimUserProvisioning(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
                                JdbcPagingListFactory pagingListFactory)
Method Detail

retrieve

public ScimUser retrieve(String id)
Specified by:
retrieve in interface ResourceManager<ScimUser>

getBaseSqlQuery

protected String getBaseSqlQuery()
Specified by:
getBaseSqlQuery in class AbstractQueryable<ScimUser>

retrieveAll

public List<ScimUser> retrieveAll()
Specified by:
retrieveAll in interface ResourceManager<ScimUser>

query

public List<ScimUser> query(String filter,
                            String sortBy,
                            boolean ascending)
Specified by:
query in interface Queryable<ScimUser>
Overrides:
query in class AbstractQueryable<ScimUser>

create

public ScimUser create(ScimUser user)
Specified by:
create in interface ResourceManager<ScimUser>

createUser

public ScimUser createUser(ScimUser user,
                           String password)
                    throws InvalidPasswordException,
                           InvalidScimResourceException
Specified by:
createUser in interface ScimUserProvisioning
Throws:
InvalidPasswordException
InvalidScimResourceException

update

public ScimUser update(String id,
                       ScimUser user)
                throws InvalidScimResourceException
Specified by:
update in interface ResourceManager<ScimUser>
Throws:
InvalidScimResourceException

changePassword

public boolean changePassword(String id,
                              String oldPassword,
                              String newPassword)
                       throws ScimResourceNotFoundException
Specified by:
changePassword in interface ScimUserProvisioning
Throws:
ScimResourceNotFoundException

delete

public ScimUser delete(String id,
                       int version)
Specified by:
delete in interface ResourceManager<ScimUser>

setDeactivateOnDelete

public void setDeactivateOnDelete(boolean deactivateOnDelete)

setPasswordValidator

public void setPasswordValidator(PasswordValidator passwordValidator)

setPasswordEncoder

public void setPasswordEncoder(org.springframework.security.crypto.password.PasswordEncoder passwordEncoder)
The encoder used to hash passwords before storing them in the database. Defaults to a BCryptPasswordEncoder.



Copyright © 2013. All rights reserved.