@Override
public Validator getRootValidator(NodeState before, NodeState after) {
TreeTypeProvider tp =
new TreeTypeProviderImpl(getAccessControlContext());
PermissionProvider pp = acConfig.getPermissionProvider(
new ImmutableRoot(before), workspaceName, principals);
if (moveTracker.isEmpty()) {
return new PermissionValidator(before, after, tp, pp, this);
} else {
return new MoveAwarePermissionValidator(before, after, tp, pp, this, moveTracker);