mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-17 18:51:10 +01:00
improve modification handler events by sending old and new items to eventbus
This commit is contained in:
@@ -48,7 +48,7 @@ import org.apache.shiro.SecurityUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sonia.scm.HandlerEvent;
|
||||
import sonia.scm.HandlerEventType;
|
||||
import sonia.scm.event.ScmEventBus;
|
||||
import sonia.scm.group.GroupEvent;
|
||||
import sonia.scm.store.ConfigurationEntryStore;
|
||||
@@ -132,7 +132,7 @@ public class DefaultSecuritySystem implements SecuritySystem
|
||||
|
||||
//J-
|
||||
ScmEventBus.getInstance().post(
|
||||
new StoredAssignedPermissionEvent(HandlerEvent.CREATE, sap)
|
||||
new StoredAssignedPermissionEvent(HandlerEventType.CREATE, sap)
|
||||
);
|
||||
//J+
|
||||
|
||||
@@ -152,7 +152,7 @@ public class DefaultSecuritySystem implements SecuritySystem
|
||||
store.remove(permission.getId());
|
||||
//J-
|
||||
ScmEventBus.getInstance().post(
|
||||
new StoredAssignedPermissionEvent(HandlerEvent.CREATE, permission)
|
||||
new StoredAssignedPermissionEvent(HandlerEventType.CREATE, permission)
|
||||
);
|
||||
//J+
|
||||
}
|
||||
@@ -185,7 +185,7 @@ public class DefaultSecuritySystem implements SecuritySystem
|
||||
@Subscribe
|
||||
public void handleEvent(final UserEvent event)
|
||||
{
|
||||
if (event.getEventType() == HandlerEvent.DELETE)
|
||||
if (event.getEventType() == HandlerEventType.DELETE)
|
||||
{
|
||||
deletePermissions(new Predicate<AssignedPermission>()
|
||||
{
|
||||
@@ -209,7 +209,7 @@ public class DefaultSecuritySystem implements SecuritySystem
|
||||
@Subscribe
|
||||
public void handleEvent(final GroupEvent event)
|
||||
{
|
||||
if (event.getEventType() == HandlerEvent.DELETE)
|
||||
if (event.getEventType() == HandlerEventType.DELETE)
|
||||
{
|
||||
deletePermissions(new Predicate<AssignedPermission>()
|
||||
{
|
||||
@@ -243,7 +243,7 @@ public class DefaultSecuritySystem implements SecuritySystem
|
||||
|
||||
//J-
|
||||
ScmEventBus.getInstance().post(
|
||||
new StoredAssignedPermissionEvent(HandlerEvent.CREATE, permission)
|
||||
new StoredAssignedPermissionEvent(HandlerEventType.CREATE, permission)
|
||||
);
|
||||
//J+
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@ import org.apache.shiro.subject.SimplePrincipalCollection;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sonia.scm.HandlerEvent;
|
||||
import sonia.scm.HandlerEventType;
|
||||
import sonia.scm.config.ScmConfiguration;
|
||||
import sonia.scm.group.Group;
|
||||
import sonia.scm.group.GroupManager;
|
||||
@@ -121,9 +121,8 @@ public class ScmRealm extends AuthorizingRealm
|
||||
*/
|
||||
@Inject
|
||||
public ScmRealm(ScmConfiguration configuration,
|
||||
LoginAttemptHandler loginAttemptHandler,
|
||||
AuthorizationCollector collector,UserManager userManager,
|
||||
GroupManager groupManager, UserDAO userDAO,
|
||||
LoginAttemptHandler loginAttemptHandler, AuthorizationCollector collector,
|
||||
UserManager userManager, GroupManager groupManager, UserDAO userDAO,
|
||||
AuthenticationManager authenticator, RepositoryManager manager,
|
||||
Provider<HttpServletRequest> requestProvider,
|
||||
Provider<HttpServletResponse> responseProvider)
|
||||
@@ -149,8 +148,6 @@ public class ScmRealm extends AuthorizingRealm
|
||||
// set components
|
||||
setPermissionResolver(new RepositoryPermissionResolver());
|
||||
}
|
||||
|
||||
private final LoginAttemptHandler loginAttemptHandler;
|
||||
|
||||
//~--- methods --------------------------------------------------------------
|
||||
|
||||
@@ -174,7 +171,7 @@ public class ScmRealm extends AuthorizingRealm
|
||||
{
|
||||
throw new UnsupportedTokenException("ScmAuthenticationToken is required");
|
||||
}
|
||||
|
||||
|
||||
loginAttemptHandler.beforeAuthentication(authToken);
|
||||
|
||||
UsernamePasswordToken token = (UsernamePasswordToken) authToken;
|
||||
@@ -198,6 +195,7 @@ public class ScmRealm extends AuthorizingRealm
|
||||
else
|
||||
{
|
||||
loginAttemptHandler.onUnsuccessfulAuthentication(authToken, result);
|
||||
|
||||
throw new AccountException("authentication failed");
|
||||
}
|
||||
|
||||
@@ -257,9 +255,10 @@ public class ScmRealm extends AuthorizingRealm
|
||||
user.setCreationDate(System.currentTimeMillis());
|
||||
|
||||
// TODO find a better way
|
||||
UserEventHack.fireEvent(userManager, user, HandlerEvent.BEFORE_CREATE);
|
||||
UserEventHack.fireEvent(userManager, HandlerEventType.BEFORE_CREATE,
|
||||
user);
|
||||
userDAO.add(user);
|
||||
UserEventHack.fireEvent(userManager, user, HandlerEvent.CREATE);
|
||||
UserEventHack.fireEvent(userManager, HandlerEventType.CREATE, user);
|
||||
}
|
||||
else if (logger.isErrorEnabled())
|
||||
{
|
||||
@@ -547,6 +546,9 @@ public class ScmRealm extends AuthorizingRealm
|
||||
/** Field description */
|
||||
private final GroupManager groupManager;
|
||||
|
||||
/** Field description */
|
||||
private final LoginAttemptHandler loginAttemptHandler;
|
||||
|
||||
/** Field description */
|
||||
private final Provider<HttpServletRequest> requestProvider;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user