Package org.apache.harmony.jndi.provider.ldap.mock

Examples of org.apache.harmony.jndi.provider.ldap.mock.EncodableLdapResult


        InitialDirContext initialDirContext = new InitialDirContext(env);

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                new EncodableLdapResult(), null) });
        LdapContext context = (LdapContext) initialDirContext.lookup("");

        assertNull(context.getConnectControls());

        server = new MockLdapServer(server);
        server.start();
        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_BIND_RESPONSE, new BindResponse(), null) });

        context.reconnect(new Control[] { new SortControl("",
                Control.NONCRITICAL) });

        Control[] controls = context.getConnectControls();
        assertNotNull(controls);
        assertEquals(1, controls.length);
        Control c = controls[0];
        assertTrue(c instanceof SortControl);
        assertEquals(Control.NONCRITICAL, c.isCritical());

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                new EncodableLdapResult(), null) });
        context = (LdapContext) context.lookup("");

        // connect controls are inherited
        controls = context.getConnectControls();
        assertNotNull(controls);
View Full Code Here


        InitialDirContext initialDirContext = new InitialDirContext(env);

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                new EncodableLdapResult(), null) });
        LdapContext context = (LdapContext) initialDirContext.lookup("");

        Control[] controls = context.getConnectControls();
        assertNotNull(controls);
        assertEquals(1, controls.length);
View Full Code Here

        InitialLdapContext initialDirContext = new InitialLdapContext(env,
                new Control[] { new SortControl("", Control.NONCRITICAL) });

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                new EncodableLdapResult(), null) });
        LdapContext context = (LdapContext) initialDirContext.lookup("");

        Control[] controls = context.getConnectControls();
        assertNotNull(controls);
        assertEquals(1, controls.length);
View Full Code Here

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_BIND_RESPONSE, new BindResponse(), null) });
        DirContext context = new InitialDirContext(env);

        EncodableLdapResult result = new EncodableLdapResult();
        result = new EncodableLdapResult(LdapResult.REFERRAL, "", "",
                new String[] { "ldap://localhost" });

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE, result, null) });
        try {
            context.getAttributes("cn=test");
            fail("Should throw PartialResultException");
        } catch (PartialResultException e) {
            // expected
        }

        result = new EncodableLdapResult(LdapResult.REFERRAL, null, null, null);

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_DEL_RESPONSE, result, null) });
        try {
            context.destroySubcontext("cn=test");
View Full Code Here

        env.put(Context.REFERRAL, "throw");
        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_BIND_RESPONSE, new BindResponse(), null) });
        DirContext context = new InitialDirContext(env);

        EncodableLdapResult result = new EncodableLdapResult(
                LdapResult.REFERRAL, "", "",
                new String[] { "ldap://localhost" });

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE, result, null) });
        try {
            context.getAttributes("cn=test");
            fail("Should throw ReferralException");
        } catch (ReferralException e) {
            assertEquals("ldap://localhost", e.getReferralInfo());
        }

        result = new EncodableLdapResult(LdapResult.REFERRAL, "", "",
                new String[] { "ldap://localhost" });

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_DEL_RESPONSE, result, null) });
View Full Code Here

        server.setResponseSeq(new LdapMessage[] {
                new LdapMessage(LdapASN1Constant.OP_SEARCH_RESULT_REF, ref,
                        null),
                new LdapMessage(LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                        new EncodableLdapResult(), null) });

        referralServer.setResponseSeq(new LdapMessage[] {
                new LdapMessage(LdapASN1Constant.OP_BIND_RESPONSE,
                        new BindResponse(), null),
                new LdapMessage(LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                        new EncodableLdapResult(), null) });

        context.search("cn=test", null);

    }
View Full Code Here

        DirContext context = new InitialDirContext(env);

        MockLdapServer referralServer = new MockLdapServer();
        referralServer.start();

        EncodableLdapResult result = new EncodableLdapResult(
                LdapResult.REFERRAL, "", "", new String[] { referralServer
                        .getURL() });

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE, result, null) });

        referralServer.setResponseSeq(new LdapMessage[] {
                new LdapMessage(LdapASN1Constant.OP_BIND_RESPONSE,
                        new BindResponse(), null),
                new LdapMessage(LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                        new EncodableLdapResult(), null) });

        context.getAttributes("cn=test");

        referralServer.stop();
    }
View Full Code Here

        assertEquals("ignore", initialDirContext.getEnvironment().get(
                Context.REFERRAL));

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_DEL_RESPONSE, new EncodableLdapResult(),
                null) });

        initialDirContext.destroySubcontext("cn=test");

        /*
         * Context.SECURITY_AUTHENTICATION will case re-bind when invoke context
         * methods at first time
         */
        Object preValue = initialDirContext.addToEnvironment(
                Context.SECURITY_AUTHENTICATION, "none");
        assertFalse("none".equals(preValue));

        server.setResponseSeq(new LdapMessage[] {
                new LdapMessage(LdapASN1Constant.OP_BIND_RESPONSE,
                        new BindResponse(), null),
                new LdapMessage(LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                        new EncodableLdapResult(), null) });

        initialDirContext.lookup("");

        preValue = initialDirContext.addToEnvironment(
                Context.SECURITY_AUTHENTICATION, "simple");
        assertFalse("simple".equals(preValue));

        // initialDirContext is shared connection, will create new connection
        server = new MockLdapServer(server);
        server.start();
        server.setResponseSeq(new LdapMessage[] {
                new LdapMessage(LdapASN1Constant.OP_BIND_RESPONSE,
                        new BindResponse(), null),
                new LdapMessage(LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                        new EncodableLdapResult(), null) });

        initialDirContext.lookup("");

    }
View Full Code Here

        // doesn't create new connection
        context.reconnect(null);

        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                new EncodableLdapResult(), null) });
        // another and context share the same connection now
        LdapContext another = (LdapContext) context.lookup("");

        MockLdapServer one = new MockLdapServer(server);
        one.start();
View Full Code Here

        /*
         * test name '/usr/bin/cn=test'
         */
        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                new EncodableLdapResult(), null) });
        try {
            context.lookup("/usr/bin/cn=test");
            fail("Should throw CannotProceedException");
        } catch (CannotProceedException e) {
            assertEquals("/", e.getAltName().toString());
            assertEquals("usr/bin/cn=test", e.getRemainingName().toString());
            assertNull(e.getRemainingNewName());
            assertTrue(e.getResolvedName() instanceof CompositeName);
            assertEquals(1, e.getResolvedName().size());
            assertEquals("/", e.getResolvedName().toString());
            assertTrue(e.getAltNameCtx() instanceof LdapContext);
            assertEquals(context.getNameInNamespace(), e.getAltNameCtx()
                    .getNameInNamespace());
            assertTrue(e.getResolvedObj() instanceof Reference);

            Reference ref = (Reference) e.getResolvedObj();
            assertEquals(Object.class.getName(), ref.getClassName());
            assertNull(ref.getFactoryClassLocation());
            assertNull(ref.getFactoryClassName());

            assertEquals(1, ref.size());
            RefAddr addr = ref.get(0);
            assertTrue(addr.getContent() instanceof LdapContext);
            assertEquals(context.getNameInNamespace(), ((LdapContext) addr
                    .getContent()).getNameInNamespace());
            assertEquals("nns", addr.getType());
        }

        /*
         * test name 'usr/bin/cn=test'
         */
        try {
            context.getAttributes("usr/bin/cn=test");
            fail("Should throw InvalidNameException");
        } catch (InvalidNameException e) {
            // expected
        }

        /*
         * test name '/'
         */
        server.setResponseSeq(new LdapMessage[] { new LdapMessage(
                LdapASN1Constant.OP_SEARCH_RESULT_DONE,
                new EncodableLdapResult(), null) });
        try {
            Name name = new CompositeName();
            name.add("");
            context.getAttributes(name);
            fail("Should throw CannotProceedException");
View Full Code Here

TOP

Related Classes of org.apache.harmony.jndi.provider.ldap.mock.EncodableLdapResult

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.