61 lines
1.7 KiB
Java
61 lines
1.7 KiB
Java
package org.jivesoftware.smackx.ikey.element;
|
|
|
|
import org.jivesoftware.smack.packet.ExtensionElement;
|
|
import org.jivesoftware.smack.packet.XmlEnvironment;
|
|
import org.jivesoftware.smack.util.XmlStringBuilder;
|
|
import org.jivesoftware.smackx.ikey.IkeyConstants;
|
|
import org.jivesoftware.smackx.ikey.IkeyType;
|
|
|
|
import javax.xml.namespace.QName;
|
|
|
|
public class IkeyElement implements ExtensionElement {
|
|
|
|
public static final String NAMESPACE = IkeyConstants.NAMESPACE;
|
|
public static final String ELEMENT = "ikey";
|
|
public static final String ATTR_IKEY_TYPE = "type";
|
|
|
|
private static final QName QNAME = new QName(IkeyConstants.NAMESPACE, ELEMENT);
|
|
|
|
private final IkeyType type;
|
|
private final SubordinateListElement subordinates;
|
|
private final ProofElement proof;
|
|
|
|
public IkeyElement(IkeyType type, SubordinateListElement subordinates, ProofElement proof) {
|
|
this.type = type;
|
|
this.subordinates = subordinates;
|
|
this.proof = proof;
|
|
}
|
|
|
|
public IkeyType getType() {
|
|
return type;
|
|
}
|
|
|
|
public SubordinateListElement getSubordinates() {
|
|
return subordinates;
|
|
}
|
|
|
|
public ProofElement getProof() {
|
|
return proof;
|
|
}
|
|
|
|
@Override
|
|
public String getNamespace() {
|
|
return NAMESPACE;
|
|
}
|
|
|
|
@Override
|
|
public String getElementName() {
|
|
return ELEMENT;
|
|
}
|
|
|
|
@Override
|
|
public XmlStringBuilder toXML(XmlEnvironment xmlEnvironment) {
|
|
return new XmlStringBuilder(this, xmlEnvironment)
|
|
.attribute(ATTR_IKEY_TYPE, getType())
|
|
.rightAngleBracket()
|
|
.append(getSubordinates())
|
|
.append(getProof())
|
|
.closeElement(this);
|
|
}
|
|
}
|