(118) - Add java-config(零配置) 的支持

2.0.0
Li Shengzhao 2016-04-04 14:21:49 +08:00
parent 2593161415
commit 221c3eab70
4 changed files with 14 additions and 0 deletions

View File

@ -6,6 +6,8 @@ import com.monkeyk.sos.domain.oauth.OauthRepository;
import com.monkeyk.sos.service.OauthService; import com.monkeyk.sos.service.OauthService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.util.List; import java.util.List;
@ -19,28 +21,33 @@ public class OauthServiceImpl implements OauthService {
private OauthRepository oauthRepository; private OauthRepository oauthRepository;
@Override @Override
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public OauthClientDetails loadOauthClientDetails(String clientId) { public OauthClientDetails loadOauthClientDetails(String clientId) {
return oauthRepository.findOauthClientDetails(clientId); return oauthRepository.findOauthClientDetails(clientId);
} }
@Override @Override
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List<OauthClientDetailsDto> loadAllOauthClientDetailsDtos() { public List<OauthClientDetailsDto> loadAllOauthClientDetailsDtos() {
List<OauthClientDetails> clientDetailses = oauthRepository.findAllOauthClientDetails(); List<OauthClientDetails> clientDetailses = oauthRepository.findAllOauthClientDetails();
return OauthClientDetailsDto.toDtos(clientDetailses); return OauthClientDetailsDto.toDtos(clientDetailses);
} }
@Override @Override
@Transactional(propagation = Propagation.REQUIRED)
public void archiveOauthClientDetails(String clientId) { public void archiveOauthClientDetails(String clientId) {
oauthRepository.updateOauthClientDetailsArchive(clientId, true); oauthRepository.updateOauthClientDetailsArchive(clientId, true);
} }
@Override @Override
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public OauthClientDetailsDto loadOauthClientDetailsDto(String clientId) { public OauthClientDetailsDto loadOauthClientDetailsDto(String clientId) {
final OauthClientDetails oauthClientDetails = oauthRepository.findOauthClientDetails(clientId); final OauthClientDetails oauthClientDetails = oauthRepository.findOauthClientDetails(clientId);
return oauthClientDetails != null ? new OauthClientDetailsDto(oauthClientDetails) : null; return oauthClientDetails != null ? new OauthClientDetailsDto(oauthClientDetails) : null;
} }
@Override @Override
@Transactional(propagation = Propagation.REQUIRED)
public void registerClientDetails(OauthClientDetailsDto formDto) { public void registerClientDetails(OauthClientDetailsDto formDto) {
OauthClientDetails clientDetails = formDto.createDomain(); OauthClientDetails clientDetails = formDto.createDomain();
oauthRepository.saveOauthClientDetails(clientDetails); oauthRepository.saveOauthClientDetails(clientDetails);

View File

@ -16,6 +16,8 @@ import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.security.oauth2.provider.OAuth2Authentication; import org.springframework.security.oauth2.provider.OAuth2Authentication;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
@ -30,6 +32,7 @@ public class UserServiceImpl implements UserService {
private UserRepository userRepository; private UserRepository userRepository;
@Override @Override
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
User user = userRepository.findByUsername(username); User user = userRepository.findByUsername(username);
if (user == null || user.archived()) { if (user == null || user.archived()) {
@ -40,6 +43,7 @@ public class UserServiceImpl implements UserService {
} }
@Override @Override
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public UserJsonDto loadCurrentUserJsonDto() { public UserJsonDto loadCurrentUserJsonDto() {
final Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); final Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
final Object principal = authentication.getPrincipal(); final Object principal = authentication.getPrincipal();
@ -54,6 +58,7 @@ public class UserServiceImpl implements UserService {
} }
@Override @Override
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public UserOverviewDto loadUserOverviewDto(UserOverviewDto overviewDto) { public UserOverviewDto loadUserOverviewDto(UserOverviewDto overviewDto) {
List<User> users = userRepository.findUsersByUsername(overviewDto.getUsername()); List<User> users = userRepository.findUsersByUsername(overviewDto.getUsername());
overviewDto.setUserDtos(UserDto.toDtos(users)); overviewDto.setUserDtos(UserDto.toDtos(users));
@ -61,12 +66,14 @@ public class UserServiceImpl implements UserService {
} }
@Override @Override
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public boolean isExistedUsername(String username) { public boolean isExistedUsername(String username) {
final User user = userRepository.findByUsername(username); final User user = userRepository.findByUsername(username);
return user != null; return user != null;
} }
@Override @Override
@Transactional(propagation = Propagation.REQUIRED)
public String saveUser(UserFormDto formDto) { public String saveUser(UserFormDto formDto) {
User user = formDto.newUser(); User user = formDto.newUser();
userRepository.saveUser(user); userRepository.saveUser(user);