diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/MetadataFilter.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/MetadataFilter.java index a80d538c9..8a42cd1f7 100644 --- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/MetadataFilter.java +++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/MetadataFilter.java @@ -32,7 +32,8 @@ @JsonSubTypes({@JsonSubTypes.Type(value=EntityRoleWhiteListFilter.class, name="EntityRoleWhiteList"), @JsonSubTypes.Type(value=EntityAttributesFilter.class, name="EntityAttributes"), @JsonSubTypes.Type(value=SignatureValidationFilter.class, name="SignatureValidation"), - @JsonSubTypes.Type(value=RequiredValidUntilFilter.class, name="RequiredValidUntil")}) + @JsonSubTypes.Type(value=RequiredValidUntilFilter.class, name="RequiredValidUntil"), + @JsonSubTypes.Type(value=NameIdFormatFilter.class, name="NameIDFormat")}) public class MetadataFilter extends AbstractAuditable { @JsonProperty("@type") diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/NameIdFormatFilter.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/NameIdFormatFilter.java new file mode 100644 index 000000000..4c15f3040 --- /dev/null +++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/NameIdFormatFilter.java @@ -0,0 +1,20 @@ +package edu.internet2.tier.shibboleth.admin.ui.domain.filters; + +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; + +import javax.persistence.Entity; + +@Entity +@EqualsAndHashCode(callSuper = true) +@Getter +@Setter +@ToString +public class NameIdFormatFilter extends MetadataFilter { + + public NameIdFormatFilter() { + type = "NameIDFormat"; + } +} diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/domain/filters/PolymorphicFiltersJacksonHandlingTests.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/domain/filters/PolymorphicFiltersJacksonHandlingTests.groovy index b3afd2adf..e5aa4380d 100644 --- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/domain/filters/PolymorphicFiltersJacksonHandlingTests.groovy +++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/domain/filters/PolymorphicFiltersJacksonHandlingTests.groovy @@ -125,6 +125,7 @@ class PolymorphicFiltersJacksonHandlingTests extends Specification { json.contains('EntityAttributes') json.contains('RequiredValidUntil') json.contains('EntityAttributes') + json.contains('NameIDFormat') } diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestObjectGenerator.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestObjectGenerator.groovy index eaf031c3e..f726bde01 100644 --- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestObjectGenerator.groovy +++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestObjectGenerator.groovy @@ -130,6 +130,7 @@ class TestObjectGenerator { filterList.add(buildFilter { entityRoleWhitelistFilter() }) filterList.add(buildFilter { signatureValidationFilter() }) filterList.add(buildFilter { requiredValidUntilFilter() }) + filterList.add(buildFilter { nameIdFormatFilter() }) } return filterList } @@ -212,6 +213,13 @@ class TestObjectGenerator { } } + NameIdFormatFilter nameIdFormatFilter() { + return new NameIdFormatFilter().with { + it.name = "NameIDFormat" + it + } + } + RequiredValidUntilFilter copyOf(RequiredValidUntilFilter requiredValidUntilFilter) { new RequiredValidUntilFilter().with { it.name = requiredValidUntilFilter.name diff --git a/settings.gradle b/settings.gradle index 8fae26617..7fe93709f 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1 +1 @@ -include 'backend', 'ui', 'pac4j-module' \ No newline at end of file +include 'backend', 'ui', 'pacj-module' \ No newline at end of file