1 20 package org.apache.directory.ldapstudio.dsmlv2.request; 21 22 import org.apache.directory.ldapstudio.dsmlv2.ParserUtils; 23 import org.apache.directory.shared.ldap.codec.LdapMessage; 24 import org.apache.directory.shared.ldap.codec.extended.ExtendedRequest; 25 import org.dom4j.Element; 26 import org.dom4j.Namespace; 27 import org.dom4j.QName; 28 29 35 public class ExtendedRequestDsml extends AbstractRequestDsml 36 { 37 43 public ExtendedRequestDsml( LdapMessage ldapMessage ) 44 { 45 super( ldapMessage ); 46 } 47 48 49 52 public int getMessageType() 53 { 54 return instance.getMessageType(); 55 } 56 57 58 61 public Element toDsml( Element root ) 62 { 63 Element element = super.toDsml( root ); 64 65 ExtendedRequest request = ( ExtendedRequest ) instance; 66 67 if ( request.getRequestName() != null ) 69 { 70 element.addElement( "requestName" ).setText( request.getRequestName() ); 71 } 72 73 Namespace xsdNamespace = new Namespace( "xsd", ParserUtils.XML_SCHEMA_URI ); 75 Namespace xsiNamespace = new Namespace( "xsi", ParserUtils.XML_SCHEMA_INSTANCE_URI ); 76 element.getDocument().getRootElement().add( xsdNamespace ); 77 element.getDocument().getRootElement().add( xsiNamespace ); 78 79 Element valueElement = element.addElement( "requestValue" ).addText( 80 ParserUtils.base64Encode( request.getRequestValue() ) ); 81 valueElement 82 .addAttribute( new QName( "type", xsiNamespace ), "xsd:" + ParserUtils.BASE64BINARY ); 83 84 return element; 85 } 86 } 87 | Popular Tags |