Search in sources :

Example 6 with AddRequest

use of org.apache.directory.api.ldap.model.message.AddRequest in project directory-ldap-api by apache.

the class AddRequestTest method testRequestWithRequestId.

/**
 * Test parsing of a request with the (optional) requestID attribute
 */
@Test
public void testRequestWithRequestId() {
    Dsmlv2Parser parser = null;
    try {
        parser = newParser();
        parser.setInput(AddRequestTest.class.getResource("request_with_requestID_attribute.xml").openStream(), "UTF-8");
        parser.parse();
    } catch (Exception e) {
        fail(e.getMessage());
    }
    AddRequest addRequest = (AddRequest) parser.getBatchRequest().getCurrentRequest();
    assertEquals(456, addRequest.getMessageId());
}
Also used : AddRequest(org.apache.directory.api.ldap.model.message.AddRequest) Dsmlv2Parser(org.apache.directory.api.dsmlv2.Dsmlv2Parser) Test(org.junit.Test) AbstractTest(org.apache.directory.api.dsmlv2.AbstractTest)

Example 7 with AddRequest

use of org.apache.directory.api.ldap.model.message.AddRequest in project directory-ldap-api by apache.

the class AddRequestTest method testRequestWith1Control.

/**
 * Test parsing of a request with a (optional) Control element
 */
@Test
public void testRequestWith1Control() {
    Dsmlv2Parser parser = null;
    try {
        parser = newParser();
        parser.setInput(AddRequestTest.class.getResource("request_with_1_control.xml").openStream(), "UTF-8");
        parser.parse();
    } catch (Exception e) {
        fail(e.getMessage());
    }
    AddRequest addRequest = (AddRequest) parser.getBatchRequest().getCurrentRequest();
    Map<String, Control> controls = addRequest.getControls();
    assertEquals(1, addRequest.getControls().size());
    Control control = controls.get("1.2.840.113556.1.4.643");
    assertNotNull(control);
    assertTrue(control.isCritical());
    assertEquals("1.2.840.113556.1.4.643", control.getOid());
    assertEquals("Some text", Strings.utf8ToString(((DsmlControl<?>) control).getValue()));
}
Also used : AddRequest(org.apache.directory.api.ldap.model.message.AddRequest) DsmlControl(org.apache.directory.api.dsmlv2.DsmlControl) DsmlControl(org.apache.directory.api.dsmlv2.DsmlControl) Control(org.apache.directory.api.ldap.model.message.Control) Dsmlv2Parser(org.apache.directory.api.dsmlv2.Dsmlv2Parser) Test(org.junit.Test) AbstractTest(org.apache.directory.api.dsmlv2.AbstractTest)

Example 8 with AddRequest

use of org.apache.directory.api.ldap.model.message.AddRequest in project directory-ldap-api by apache.

the class AddRequestTest method testRequestWith2AttrWithValue.

/**
 * Test parsing of a request with 2 Attr elements with value
 */
@Test
public void testRequestWith2AttrWithValue() {
    Dsmlv2Parser parser = null;
    try {
        parser = newParser();
        parser.setInput(AddRequestTest.class.getResource("request_with_2_attr_with_value.xml").openStream(), "UTF-8");
        parser.parse();
    } catch (Exception e) {
        fail(e.getMessage());
    }
    AddRequest addRequest = (AddRequest) parser.getBatchRequest().getCurrentRequest();
    Entry entry = addRequest.getEntry();
    assertEquals(1, entry.size());
    // Getting the Attribute
    Iterator<Attribute> attributeIterator = entry.iterator();
    Attribute attribute = attributeIterator.next();
    assertEquals("objectclass", attribute.getUpId());
    // Getting the Value
    Iterator<Value> valueIterator = attribute.iterator();
    assertTrue(valueIterator.hasNext());
    Value value = valueIterator.next();
    assertEquals("top", value.getValue());
    assertTrue(valueIterator.hasNext());
    value = valueIterator.next();
    assertEquals("person", value.getValue());
    assertFalse(valueIterator.hasNext());
}
Also used : AddRequest(org.apache.directory.api.ldap.model.message.AddRequest) Entry(org.apache.directory.api.ldap.model.entry.Entry) Attribute(org.apache.directory.api.ldap.model.entry.Attribute) Value(org.apache.directory.api.ldap.model.entry.Value) Dsmlv2Parser(org.apache.directory.api.dsmlv2.Dsmlv2Parser) Test(org.junit.Test) AbstractTest(org.apache.directory.api.dsmlv2.AbstractTest)

Example 9 with AddRequest

use of org.apache.directory.api.ldap.model.message.AddRequest in project directory-ldap-api by apache.

the class AddRequestTest method testRequestWith1ControlBase64Value.

/**
 * Test parsing of a request with a (optional) Control element with Base64 value
 */
@Test
public void testRequestWith1ControlBase64Value() {
    Dsmlv2Parser parser = null;
    try {
        parser = newParser();
        parser.setInput(AddRequestTest.class.getResource("request_with_1_control_base64_value.xml").openStream(), "UTF-8");
        parser.parse();
    } catch (Exception e) {
        fail(e.getMessage());
    }
    AddRequest addRequest = (AddRequest) parser.getBatchRequest().getCurrentRequest();
    Map<String, Control> controls = addRequest.getControls();
    assertEquals(1, addRequest.getControls().size());
    Control control = controls.get("1.2.840.113556.1.4.643");
    assertNotNull(control);
    assertTrue(control.isCritical());
    assertEquals("1.2.840.113556.1.4.643", control.getOid());
    assertEquals("DSMLv2.0 rocks!!", Strings.utf8ToString(((DsmlControl<?>) control).getValue()));
}
Also used : AddRequest(org.apache.directory.api.ldap.model.message.AddRequest) DsmlControl(org.apache.directory.api.dsmlv2.DsmlControl) DsmlControl(org.apache.directory.api.dsmlv2.DsmlControl) Control(org.apache.directory.api.ldap.model.message.Control) Dsmlv2Parser(org.apache.directory.api.dsmlv2.Dsmlv2Parser) Test(org.junit.Test) AbstractTest(org.apache.directory.api.dsmlv2.AbstractTest)

Example 10 with AddRequest

use of org.apache.directory.api.ldap.model.message.AddRequest in project directory-ldap-api by apache.

the class AddRequestTest method testRequestWithDn.

/**
 * Test parsing of a request with the dn attribute
 */
@Test
public void testRequestWithDn() {
    Dsmlv2Parser parser = null;
    try {
        parser = newParser();
        parser.setInput(AddRequestTest.class.getResource("request_with_dn_attribute.xml").openStream(), "UTF-8");
        parser.parse();
    } catch (Exception e) {
        fail(e.getMessage());
    }
    AddRequest addRequest = (AddRequest) parser.getBatchRequest().getCurrentRequest();
    assertTrue(addRequest.getEntryDn().equals("cn=Bob Rush,ou=Dev,dc=Example,dc=COM"));
}
Also used : AddRequest(org.apache.directory.api.ldap.model.message.AddRequest) Dsmlv2Parser(org.apache.directory.api.dsmlv2.Dsmlv2Parser) Test(org.junit.Test) AbstractTest(org.apache.directory.api.dsmlv2.AbstractTest)

Aggregations

AddRequest (org.apache.directory.api.ldap.model.message.AddRequest)26 Test (org.junit.Test)19 AbstractTest (org.apache.directory.api.dsmlv2.AbstractTest)16 Dsmlv2Parser (org.apache.directory.api.dsmlv2.Dsmlv2Parser)16 Entry (org.apache.directory.api.ldap.model.entry.Entry)12 Value (org.apache.directory.api.ldap.model.entry.Value)11 Attribute (org.apache.directory.api.ldap.model.entry.Attribute)10 Control (org.apache.directory.api.ldap.model.message.Control)7 DsmlControl (org.apache.directory.api.dsmlv2.DsmlControl)5 AddRequestDecorator (org.apache.directory.api.ldap.codec.decorators.AddRequestDecorator)5 DecoderException (org.apache.directory.api.asn1.DecoderException)4 AddRequestImpl (org.apache.directory.api.ldap.model.message.AddRequestImpl)4 ByteBuffer (java.nio.ByteBuffer)3 EncoderException (org.apache.directory.api.asn1.EncoderException)3 Asn1Decoder (org.apache.directory.api.asn1.ber.Asn1Decoder)3 BatchRequestDsml (org.apache.directory.api.dsmlv2.request.BatchRequestDsml)3 LdapMessageContainer (org.apache.directory.api.ldap.codec.api.LdapMessageContainer)3 AbstractCodecServiceTest (org.apache.directory.api.ldap.codec.osgi.AbstractCodecServiceTest)3 AbandonRequest (org.apache.directory.api.ldap.model.message.AbandonRequest)3 BindRequest (org.apache.directory.api.ldap.model.message.BindRequest)3