Skip to content

Commit

Permalink
Add event publisher for client creation
Browse files Browse the repository at this point in the history
from admin account
  • Loading branch information
rmiccoli committed Mar 4, 2022
1 parent 65cc11f commit 0e07607
Showing 1 changed file with 7 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,13 @@

import org.mitre.oauth2.model.ClientDetailsEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import it.infn.mw.iam.audit.events.client.ClientCreatedEvent;
import it.infn.mw.iam.persistence.model.IamAccount;
import it.infn.mw.iam.persistence.model.IamAccountClient;
import it.infn.mw.iam.persistence.repository.client.ClientSpecs;
Expand All @@ -42,19 +44,23 @@ public class DefaultClientService implements ClientService {
private final IamClientRepository clientRepo;

private final IamAccountClientRepository accountClientRepo;

private ApplicationEventPublisher eventPublisher;

@Autowired
public DefaultClientService(Clock clock, IamClientRepository clientRepo,
IamAccountClientRepository accountClientRepo) {
IamAccountClientRepository accountClientRepo, ApplicationEventPublisher eventPublisher) {
this.clock = clock;
this.clientRepo = clientRepo;
this.accountClientRepo = accountClientRepo;
this.eventPublisher = eventPublisher;
}


@Override
public ClientDetailsEntity saveNewClient(ClientDetailsEntity client) {
client.setCreatedAt(Date.from(clock.instant()));
eventPublisher.publishEvent(new ClientCreatedEvent(this, client));
return clientRepo.save(client);
}

Expand Down

0 comments on commit 0e07607

Please sign in to comment.