package pebl.benchmark.test.partner; import java.nio.file.Path; import java.nio.file.Paths; import java.util.Arrays; import java.util.Collections; import java.util.LinkedList; import java.util.List; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlRootElement; import pebl.benchmark.test.partner.rules.OperationInputOutputRule; @XmlAccessorType(XmlAccessType.NONE) @XmlRootElement public class RuleBasedWSDLTestPartner extends WSDLTestPartner { // operation -> input -> action @XmlElement(name="rule") @XmlElementWrapper( name="rules" ) private final List<OperationInputOutputRule> rules; RuleBasedWSDLTestPartner() { this(Paths.get(""), ""); } public RuleBasedWSDLTestPartner(Path interfaceDescription, String publishedUrl, OperationInputOutputRule... operationInputOutputRules) { super(publishedUrl, interfaceDescription); this.rules = new LinkedList<>(Arrays.asList(operationInputOutputRules)); } public List<OperationInputOutputRule> getRules() { return Collections.unmodifiableList(rules); } }