Your suggestion works well for 'create' and 'update' events, but when I try to use the
session.users().getUserById(userId, realm), the result is null.
L
if (event.getRealmId()
!= null &&
event.getAuthDetails().getUserId() !=
null &&
event.getResourcePath() !=
null &&
event.getResourcePath().startsWith("users/"))
{
RealmModel
realm =
model.getRealm(event.getRealmId());
String
userId =
event.getResourcePath().substring(event.getResourcePath().lastIndexOf("/")+1);
UserModel
user =
session.users().getUserById(userId,
realm);
if (user
!= null) {
if(OperationType.DELETE.equals(event.getOperationType())){
//Deleting the user in Hubspot
log.infov("Deleting the user
(ID={0}) in Hubspot...",
user.getEmail());
}else
if(OperationType.UPDATE.equals(event.getOperationType())){
//Deleting the user in Hubspot
log.infov("Updating the user
(ID={0}) in Hubspot...",
user.getEmail());
}else
if(OperationType.CREATE.equals(event.getOperationType())){
//Deleting the user in Hubspot
log.infov("Registering the
user (ID={0}) in Hubspot...",
user.getEmail());
}
}else{
log.errorv("No User found
with ID={0}, Operation={1}",
userId,
event.getOperationType());
}
}else{
log.errorv("No Realm ID or
User ID found");
}
2016-06-13 11:22:02,502 INFO [com.itroi.keycloak.events.hubspot.HubspotEventListenerProvider] (default task-56) Registering the user (ID=user500@mail.com) in
Hubspot...
2016-06-13 11:22:19,463 INFO [com.itroi.keycloak.events.hubspot.HubspotEventListenerProvider] (default task-64) Updating the user (ID=user500@mail2.com) in Hubspot...
2016-06-13 11:22:32,403 ERROR [com.itroi.keycloak.events.hubspot.HubspotEventListenerProvider] (default task-7) No User found with ID=179e55e6-5788-4a10-a640-6661485bfa95,
Operation=DELETE
Jairo Henao Rojas
IT ROI Solutions
Software Architect
Mobile : 314-738-6032
Office Colombia: + (571) 381-9185
Office Mexico: + 52-81-4624-4468
Office Chile: + 5622-582-2257
Office USA: 954-518-3330
Office Canada: 604-998-2280
From: Stian Thorgersen [mailto:sthorger@redhat.com]
Sent: Monday, June 13, 2016 8:28 AM
To: Jairo Henao <jahenao@itroisolutions.com>
Cc: keycloak-user@lists.jboss.org
Subject: Re: [keycloak-user] Getting the user email before delete it
You can get the user object from session.users().getUserById(..), which will give you the email.
On 11 June 2016 at 08:58, Jairo Henao <jahenao@itroisolutions.com> wrote:
Hello community:
I have a listener that is pending when an administrator deletes a user. How I can get the user email?
Apparently I can only get his ID, but I need his email to delete it in HubSpot.
There is something like a pre-delete event?
Thanks,
Jairo Henao Rojas
IT ROI Solutions
Software Architect
Mobile : 314-738-6032
Office Colombia: + (571) 381-9185
Office Mexico: + 52-81-4624-4468
Office Chile: + 5622-582-2257
Office USA: 954-518-3330Office Canada: 604-998-2280
_______________________________________________
keycloak-user mailing list
keycloak-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/keycloak-user