Skip to content

Commit

Permalink
[SHIBUI-704]
Browse files Browse the repository at this point in the history
Added functionality for missing child elements of DynamicHTTP resolver.
This is still a WIP, XML generation is not complete.
  • Loading branch information
Bill Smith committed Nov 14, 2018
1 parent d05b334 commit 1b45473
Show file tree
Hide file tree
Showing 5 changed files with 116 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@
import lombok.Setter;
import lombok.ToString;

import javax.persistence.CascadeType;
import javax.persistence.ElementCollection;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.OneToOne;
import javax.persistence.OrderColumn;
import java.util.List;

Expand Down Expand Up @@ -36,6 +38,9 @@ public class DynamicHttpMetadataResolver extends MetadataResolver {
@OrderColumn
private List<String> supportedContentTypes;

@OneToOne(cascade = CascadeType.ALL)
private MetadataRequestURLConstructionScheme metadataRequestURLConstructionScheme;

public DynamicHttpMetadataResolver() {
type = "DynamicHttpMetadataResolver";
this.httpMetadataResolverAttributes = new HttpMetadataResolverAttributes();
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package edu.internet2.tier.shibboleth.admin.ui.domain.resolvers;

import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.Entity;

/**
* @author Bill Smith (wsmith@unicon.net)
*/
@Entity
@Getter
@Setter
@EqualsAndHashCode(callSuper = true)
public class MetadataQueryProtocolScheme extends MetadataRequestURLConstructionScheme {

public MetadataQueryProtocolScheme() {
type = "MetadataQueryProtocol";
}

private String transformRef;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
package edu.internet2.tier.shibboleth.admin.ui.domain.resolvers;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import edu.internet2.tier.shibboleth.admin.ui.domain.AbstractAuditable;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.Entity;
import javax.persistence.Transient;

/**
* @author Bill Smith (wsmith@unicon.net)
*/
@Entity
@Getter
@Setter
@EqualsAndHashCode(callSuper = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.EXISTING_PROPERTY, property = "@type", visible = true)
@JsonSubTypes({@JsonSubTypes.Type(value=MetadataQueryProtocolScheme.class, name="MetadataQueryProtocol"),
@JsonSubTypes.Type(value=TemplateScheme.class, name="Template"),
@JsonSubTypes.Type(value=RegexScheme.class, name="Regex")})
public abstract class MetadataRequestURLConstructionScheme extends AbstractAuditable {

@JsonProperty("@type")
@Transient
String type;

String content;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package edu.internet2.tier.shibboleth.admin.ui.domain.resolvers;

import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.Entity;
import javax.validation.constraints.NotNull;

/**
* @author Bill Smith (wsmith@unicon.net)
*/
@Entity
@Getter
@Setter
@EqualsAndHashCode(callSuper = true)
public class RegexScheme extends MetadataRequestURLConstructionScheme {

public RegexScheme() {
type = "Regex";
}

@NotNull
private String match;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package edu.internet2.tier.shibboleth.admin.ui.domain.resolvers;

import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.Entity;

/**
* @author Bill Smith (wsmith@unicon.net)
*/
@Entity
@Getter
@Setter
@EqualsAndHashCode(callSuper = true)
public class TemplateScheme extends MetadataRequestURLConstructionScheme {

public TemplateScheme () {
type = "Template";
}

public enum EncodingStyle {
NONE, FORM, PATH, FRAGMENT
}

private EncodingStyle encodingStyle = EncodingStyle.FORM;

private String transformRef;

private String velocityEngine = "shibboleth.VelocityEngine";
}

0 comments on commit 1b45473

Please sign in to comment.