"migrate" SERVER object also after receiving initial load, ensuring that a newly created server group is used for the SERVER object's group ownership

This commit is contained in:
Axel Uhl committed 2020-02-13 18:41:31 +01:00
1 parent 3a2a1c947a
commit d19bd2a7f3
5 files changed
+18 -7

No files matched your search

@@ -2105,6 +2105,8 @@ public class SecurityServiceImpl implements ReplicableSecurityService, ClearStat
} finally {
Thread.currentThread().setContextClassLoader(oldCCL);
}
// now ensure that the SERVER object has a valid ownership; use the (potentially new) server group as the default:
migrateServerObject();
logger.info("Reading isSharedAcrossSubdomains...");
sharedAcrossSubdomainsOf = (String) is.readObject();
logger.info("...as "+sharedAcrossSubdomainsOf);
@@ -2251,6 +2253,14 @@ public class SecurityServiceImpl implements ReplicableSecurityService, ClearStat
return wasNecessaryToMigrate;
}
@Override
public void migrateServerObject() {
final QualifiedObjectIdentifier serverIdentifier = SecuredSecurityTypes.SERVER
.getQualifiedObjectIdentifier(
new TypeRelativeObjectIdentifier(ServerInfo.getName()));
migrateOwnership(serverIdentifier, serverIdentifier.toString());
}
@Override
public void checkMigration(Iterable<HasPermissions> allInstances) {
Class<? extends HasPermissions> clazz = Util.first(allInstances).getClass();