List of usage examples for org.springframework.jdbc.core PreparedStatementSetter PreparedStatementSetter
PreparedStatementSetter
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupExternalMembershipManager.java
@Override public List<ScimGroupExternalMemberInterface> getExternalGroupMapsByGroupId(final String groupId) throws ScimResourceNotFoundException { return jdbcTemplate.query(GET_EXTERNAL_GROUP_MAPPINGS_SQL, new PreparedStatementSetter() { @Override/* w w w . ja va2 s .com*/ public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, groupId); } }, rowMapper); }
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupExternalMembershipManager.java
@Override public List<ScimGroupExternalMemberInterface> getExternalGroupMapsByGroupName(final String groupName) throws ScimResourceNotFoundException { final List<ScimGroupInterface> groups = scimGroupProvisioning .query(String.format("displayName eq '%s'", groupName)); if (null != groups && groups.size() > 0) { return jdbcTemplate.query(GET_EXTERNAL_GROUP_MAPPINGS_SQL, new PreparedStatementSetter() { @Override//w w w .j ava 2 s . c o m public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, groups.get(0).getId()); } }, rowMapper); } else { return null; } }
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupExternalMembershipManager.java
@Override public List<ScimGroupExternalMemberInterface> getExternalGroupMapsByExternalGroup(final String externalGroup) throws ScimResourceNotFoundException { return jdbcTemplate.query(GET_GROUPS_BY_EXTERNAL_GROUP_MAPPING_SQL, new PreparedStatementSetter() { @Override/* w w w .j a va 2 s . c o m*/ public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, externalGroup); } }, rowMapper); }
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupMembershipManager.java
@Override public ScimGroupMemberInterface addMember(final String groupId, final ScimGroupMemberInterface member) throws ScimResourceNotFoundException, MemberAlreadyExistsException { // first validate the supplied groupId, memberId validateRequest(groupId, member);//from ww w. j a v a2s . com final String authorities = getGroupAuthorities(member); final String type = (member.getType() == null ? ScimGroupMemberInterface.Type.USER : member.getType()) .toString(); try { jdbcTemplate.update(ADD_MEMBER_SQL, new PreparedStatementSetter() { @Override public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, groupId); ps.setString(2, member.getMemberId()); ps.setString(3, type); ps.setString(4, authorities); ps.setTimestamp(5, new Timestamp(new Date().getTime())); } }); } catch (DuplicateKeyException e) { throw new MemberAlreadyExistsException( member.getMemberId() + " is already part of the group: " + groupId); } return getMemberById(groupId, member.getMemberId()); }
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupMembershipManager.java
@Override public List<ScimGroupMemberInterface> getMembers(final String groupId) throws ScimResourceNotFoundException { return jdbcTemplate.query(GET_MEMBERS_SQL, new PreparedStatementSetter() { @Override// w w w .ja v a 2 s .c o m public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, groupId); } }, rowMapper); }
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupMembershipManager.java
private void getGroupsWithMember(List<ScimGroupInterface> results, final String memberId, boolean transitive) { if (results == null) { return;/*from ww w . jav a2s .com*/ } List<String> groupIds; try { groupIds = jdbcTemplate.query(GET_GROUPS_BY_MEMBER_SQL, new PreparedStatementSetter() { @Override public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, memberId); } }, new SingleColumnRowMapper<String>(String.class)); } catch (EmptyResultDataAccessException ex) { groupIds = Collections.<String>emptyList(); } for (String groupId : groupIds) { ScimGroupInterface group; try { group = groupProvisioning.retrieve(groupId); } catch (ScimResourceNotFoundException ex) { continue; } if (!results.contains(group)) { // to ensure we don't go into // infinite recursion caused by // nested group cycles results.add(group); if (transitive) { getGroupsWithMember(results, groupId, transitive); } } } }
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupMembershipManager.java
@Override public List<ScimGroupMemberInterface> getMembers(final String groupId, final ScimGroupMemberInterface.Role permission) throws ScimResourceNotFoundException { logger.debug("getting members of type: " + permission + " from group: " + groupId); List<ScimGroupMemberInterface> members = new ArrayList<ScimGroupMemberInterface>(); members.addAll(jdbcTemplate.query(GET_MEMBERS_WITH_AUTHORITY_SQL, new PreparedStatementSetter() { @Override//from w w w .ja va2 s . c om public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, groupId); ps.setString(2, "%" + permission.toString().toLowerCase() + "%"); } }, rowMapper)); return members; }
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupMembershipManager.java
@Override public ScimGroupMemberInterface updateMember(final String groupId, final ScimGroupMemberInterface member) throws ScimResourceNotFoundException, MemberNotFoundException { validateRequest(groupId, member);/* w ww.j ava2s .c om*/ final String authorities = getGroupAuthorities(member); int updated = jdbcTemplate.update(UPDATE_MEMBER_SQL, new PreparedStatementSetter() { @Override public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, authorities); ps.setString(2, groupId); ps.setString(3, member.getMemberId()); } }); if (updated != 1) { throw new IncorrectResultSizeDataAccessException("unexpected number of members updated", 1, updated); } return getMemberById(groupId, member.getMemberId()); }
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupMembershipManager.java
@Override public ScimGroupMemberInterface removeMemberById(final String groupId, final String memberId) throws ScimResourceNotFoundException, MemberNotFoundException { ScimGroupMemberInterface member = getMemberById(groupId, memberId); int deleted = jdbcTemplate.update(DELETE_MEMBER_SQL, new PreparedStatementSetter() { @Override// www. java 2 s . c o m public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, groupId); ps.setString(2, memberId); } }); if (deleted != 1) { throw new IncorrectResultSizeDataAccessException("unexpected number of members removed", 1, deleted); } return member; }
From source file:org.cloudfoundry.identity.uaa.scim.dao.standard.JdbcScimGroupMembershipManager.java
@Override public List<ScimGroupMemberInterface> removeMembersByGroupId(final String groupId) throws ScimResourceNotFoundException { List<ScimGroupMemberInterface> members = getMembers(groupId); logger.debug("removing " + members + " members from group: " + groupId); int deleted = jdbcTemplate.update(DELETE_MEMBERS_IN_GROUP_SQL, new PreparedStatementSetter() { @Override// w ww . ja v a2 s. co m public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, groupId); } }); if (deleted != members.size()) { throw new IncorrectResultSizeDataAccessException("unexpected number of members removed", members.size(), deleted); } return members; }