Skip to content

Commit

Permalink
[SHIBUI-518]
Browse files Browse the repository at this point in the history
Added LocalDynamicMetadataResolver to resolver service tests.
  • Loading branch information
Bill Smith committed Jun 13, 2018
1 parent 1b76b3b commit 16c9874
Show file tree
Hide file tree
Showing 5 changed files with 62 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -222,4 +222,36 @@ class JPAMetadataResolverServiceImpl implements MetadataResolverService {
childNodes()
}
}

void constructXmlNodeForResolver(LocalDynamicMetadataResolver resolver, def markupBuilderDelegate, Closure childNodes) {
markupBuilderDelegate.MetadataProvider(sourceDirectory: resolver.sourceDirectory,
sourceManagerRef: resolver.sourceManagerRef,
sourceKeyGeneratorRef: resolver.sourceKeyGeneratorRef,

id: resolver.name,
'xsi:type': 'DynamicHttpMetadataProvider',
requireValidMetadata: !resolver.requireValidMetadata ?: null,
failFastInitialization: !resolver.failFastInitialization ?: null,
sortKey: resolver.sortKey,
criterionPredicateRegistryRef: resolver.criterionPredicateRegistryRef,
useDefaultPredicateRegistry: !resolver.useDefaultPredicateRegistry ?: null,
satisfyAnyPredicates: resolver.satisfyAnyPredicates ?: null,
parserPoolRef: resolver.dynamicMetadataResolverAttributes?.parserPoolRef,
taskTimerRef: resolver.dynamicMetadataResolverAttributes?.taskTimerRef,
refreshDelayFactor: resolver.dynamicMetadataResolverAttributes?.refreshDelayFactor,
minCacheDuration: resolver.dynamicMetadataResolverAttributes?.minCacheDuration,
maxCacheDuration: resolver.dynamicMetadataResolverAttributes?.maxCacheDuration,
maxIdleEntityData: resolver.dynamicMetadataResolverAttributes?.maxIdleEntityData,
removeIdleEntityData: !resolver.dynamicMetadataResolverAttributes?.removeIdleEntityData ?: null,
cleanupTaskInterval: resolver.dynamicMetadataResolverAttributes?.cleanupTaskInterval,
persistentCacheManagerRef: resolver.dynamicMetadataResolverAttributes?.persistentCacheManagerRef,
persistentCacheManagerDirectory: resolver.dynamicMetadataResolverAttributes?.persistentCacheManagerDirectory,
persistentCacheKeyGeneratorRef: resolver.dynamicMetadataResolverAttributes?.persistentCacheKeyGeneratorRef,
initializeFromPersistentCacheInBackground: !resolver.dynamicMetadataResolverAttributes?.initializeFromPersistentCacheInBackground ?: null,
backgroundInitializationFromCacheDelay: resolver.dynamicMetadataResolverAttributes?.backgroundInitializationFromCacheDelay,
initializationFromCachePredicateRef: resolver.dynamicMetadataResolverAttributes?.initializationFromCachePredicateRef) {

childNodes()
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,9 @@ class IncommonJPAMetadataResolverServiceImplTests extends Specification {

// Generate and test edu.internet2.tier.shibboleth.admin.ui.domain.resolvers.DynamicHttpMetadataResolver.
metadataResolverRepository.save(new TestObjectGenerator(attributeUtility).dynamicHttpMetadataResolver())

// Generate and test edu.internet2.tier.shibboleth.admin.ui.domain.resolvers.LocalDynamicMetadataResolver.
metadataResolverRepository.save(new TestObjectGenerator(attributeUtility).localDynamicMetadataResolver())
}

return resolver
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -324,6 +324,13 @@ class TestObjectGenerator {
}
}

LocalDynamicMetadataResolver localDynamicMetadataResolver() {
new LocalDynamicMetadataResolver().with {
it.name = 'LocalDynamic'
it
}
}

FileBackedHttpMetadataResolver buildFileBackedHttpMetadataResolver() {
def resolver = new FileBackedHttpMetadataResolver()
resolver.name = generator.randomString(10)
Expand Down
10 changes: 10 additions & 0 deletions backend/src/test/resources/conf/278.2.xml
Original file line number Diff line number Diff line change
Expand Up @@ -50,5 +50,15 @@
<RetainedRole>md:SPSSODescriptor</RetainedRole>
</MetadataFilter>
</MetadataProvider>
<MetadataProvider id="LocalDynamic"
initializeFromPersistentCacheInBackground="true"
removeIdleEntityData="true"
xsi:type="DynamicHttpMetadataProvider">
<MetadataFilter certificateFile="%{idp.home}/credentials/inc-md-cert.pem" requireSignedRoot="true" xsi:type="SignatureValidation"/>
<MetadataFilter maxValidityInterval="P14D" xsi:type="RequiredValidUntil"/>
<MetadataFilter xsi:type="EntityRoleWhiteList">
<RetainedRole>md:SPSSODescriptor</RetainedRole>
</MetadataFilter>
</MetadataProvider>

</MetadataProvider>
11 changes: 10 additions & 1 deletion backend/src/test/resources/conf/278.xml
Original file line number Diff line number Diff line change
Expand Up @@ -43,5 +43,14 @@
<RetainedRole>md:SPSSODescriptor</RetainedRole>
</MetadataFilter>
</MetadataProvider>

<MetadataProvider id="LocalDynamic"
initializeFromPersistentCacheInBackground="true"
removeIdleEntityData="true"
xsi:type="DynamicHttpMetadataProvider">
<MetadataFilter certificateFile="%{idp.home}/credentials/inc-md-cert.pem" requireSignedRoot="true" xsi:type="SignatureValidation"/>
<MetadataFilter maxValidityInterval="P14D" xsi:type="RequiredValidUntil"/>
<MetadataFilter xsi:type="EntityRoleWhiteList">
<RetainedRole>md:SPSSODescriptor</RetainedRole>
</MetadataFilter>
</MetadataProvider>
</MetadataProvider>

0 comments on commit 16c9874

Please sign in to comment.