public SynchronizationPlan planAssignPrincipalRolesToCatalogRolesSync()

in polaris-synchronizer/api/src/main/java/org/apache/polaris/tools/sync/polaris/planning/ModificationAwarePlanner.java [380:402]


  public SynchronizationPlan<PrincipalRole> planAssignPrincipalRolesToCatalogRolesSync(
      String catalogName,
      String catalogRoleName,
      List<PrincipalRole> assignedPrincipalRolesOnSource,
      List<PrincipalRole> assignedPrincipalRolesOnTarget) {
    FilteredNotModifiedEntityResult<PrincipalRole> result = filterOutEntitiesNotModified(
            assignedPrincipalRolesOnSource,
            assignedPrincipalRolesOnTarget,
            PrincipalRole::getName,
            this::areSame
    );

    SynchronizationPlan<PrincipalRole> delegatedPlan = delegate.planAssignPrincipalRolesToCatalogRolesSync(
        catalogName,
        catalogRoleName,
        assignedPrincipalRolesOnSource,
        assignedPrincipalRolesOnTarget);

    for (PrincipalRole principalRole : result.notModifiedEntities()) {
      delegatedPlan.skipEntityNotModified(principalRole);
    }
    return delegatedPlan;
  }