service layer cleanups
parent
4e18fb4525
commit
e9d1ed270d
|
@ -21,6 +21,7 @@ import java.util.Set;
|
|||
|
||||
import org.mitre.openid.connect.model.ApprovedSite;
|
||||
import org.mitre.openid.connect.model.WhitelistedSite;
|
||||
import org.springframework.security.oauth2.provider.ClientDetails;
|
||||
|
||||
/**
|
||||
* Interface for ApprovedSite service
|
||||
|
@ -88,4 +89,10 @@ public interface ApprovedSiteService {
|
|||
* @return
|
||||
*/
|
||||
public Collection<ApprovedSite> getByClientId(String clientId);
|
||||
|
||||
/**
|
||||
* Clear out any approved sites for a given client.
|
||||
* @param client
|
||||
*/
|
||||
public void clearApprovedSitesForClient(ClientDetails client);
|
||||
}
|
||||
|
|
|
@ -27,8 +27,9 @@ import org.mitre.oauth2.repository.OAuth2TokenRepository;
|
|||
import org.mitre.oauth2.service.ClientDetailsEntityService;
|
||||
import org.mitre.openid.connect.model.ApprovedSite;
|
||||
import org.mitre.openid.connect.model.WhitelistedSite;
|
||||
import org.mitre.openid.connect.repository.ApprovedSiteRepository;
|
||||
import org.mitre.openid.connect.repository.WhitelistedSiteRepository;
|
||||
import org.mitre.openid.connect.service.ApprovedSiteService;
|
||||
import org.mitre.openid.connect.service.BlacklistedSiteService;
|
||||
import org.mitre.openid.connect.service.WhitelistedSiteService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.oauth2.common.exceptions.InvalidClientException;
|
||||
import org.springframework.security.oauth2.common.exceptions.OAuth2Exception;
|
||||
|
@ -46,10 +47,13 @@ public class DefaultOAuth2ClientDetailsEntityService implements ClientDetailsEnt
|
|||
private OAuth2TokenRepository tokenRepository;
|
||||
|
||||
@Autowired
|
||||
private ApprovedSiteRepository approvedSiteRepository;
|
||||
private ApprovedSiteService approvedSiteService;
|
||||
|
||||
@Autowired
|
||||
private WhitelistedSiteRepository whitelistedSiteRepository;
|
||||
private WhitelistedSiteService whitelistedSiteService;
|
||||
|
||||
@Autowired
|
||||
private BlacklistedSiteService blacklistedSiteService;
|
||||
|
||||
public DefaultOAuth2ClientDetailsEntityService() {
|
||||
|
||||
|
@ -117,17 +121,12 @@ public class DefaultOAuth2ClientDetailsEntityService implements ClientDetailsEnt
|
|||
tokenRepository.clearTokensForClient(client);
|
||||
|
||||
// clean out any approved sites for this client
|
||||
Collection<ApprovedSite> approvedSites = approvedSiteRepository.getByClientId(client.getClientId());
|
||||
if (approvedSites != null) {
|
||||
for (ApprovedSite approvedSite : approvedSites) {
|
||||
approvedSiteRepository.remove(approvedSite);
|
||||
}
|
||||
}
|
||||
approvedSiteService.clearApprovedSitesForClient(client);
|
||||
|
||||
// clear out any whitelisted sites for this client
|
||||
WhitelistedSite whitelistedSite = whitelistedSiteRepository.getByClientId(client.getClientId());
|
||||
WhitelistedSite whitelistedSite = whitelistedSiteService.getByClientId(client.getClientId());
|
||||
if (whitelistedSite != null) {
|
||||
whitelistedSiteRepository.remove(whitelistedSite);
|
||||
whitelistedSiteService.remove(whitelistedSite);
|
||||
}
|
||||
|
||||
// take care of the client itself
|
||||
|
|
|
@ -19,11 +19,13 @@ import java.util.Collection;
|
|||
import java.util.Date;
|
||||
import java.util.Set;
|
||||
|
||||
import org.mitre.oauth2.model.ClientDetailsEntity;
|
||||
import org.mitre.openid.connect.model.ApprovedSite;
|
||||
import org.mitre.openid.connect.model.WhitelistedSite;
|
||||
import org.mitre.openid.connect.repository.ApprovedSiteRepository;
|
||||
import org.mitre.openid.connect.service.ApprovedSiteService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.oauth2.provider.ClientDetails;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
|
@ -125,5 +127,15 @@ public class DefaultApprovedSiteService implements ApprovedSiteService {
|
|||
return approvedSiteRepository.getByClientId(clientId);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public void clearApprovedSitesForClient(ClientDetails client) {
|
||||
Collection<ApprovedSite> approvedSites = approvedSiteRepository.getByClientId(client.getClientId());
|
||||
if (approvedSites != null) {
|
||||
for (ApprovedSite approvedSite : approvedSites) {
|
||||
approvedSiteRepository.remove(approvedSite);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue