in polaris-synchronizer/api/src/main/java/org/apache/polaris/tools/sync/polaris/planning/ModificationAwarePlanner.java [328:350]
public SynchronizationPlan<CatalogRole> planCatalogRoleSync(
String catalogName,
List<CatalogRole> catalogRolesOnSource,
List<CatalogRole> catalogRolesOnTarget) {
FilteredNotModifiedEntityResult<CatalogRole> result = filterOutEntitiesNotModified(
catalogRolesOnSource,
catalogRolesOnTarget,
CatalogRole::getName,
this::areSame
);
SynchronizationPlan<CatalogRole> delegatedPlan =
delegate.planCatalogRoleSync(
catalogName,
result.filteredEntitiesSource(),
result.filteredEntitiesTarget());
for (CatalogRole catalogRole : result.notModifiedEntities()) {
delegatedPlan.skipEntityNotModified(catalogRole);
}
return delegatedPlan;
}