Examples of Referral


Examples of org.apache.directory.api.ldap.model.message.Referral

                    List<String> urls = new ArrayList<String>();
                    {
                        while ( referralsInfo.hasMoreReferrals() )
                        {
                            Referral referral = referralsInfo.getNextReferral();
                            for ( IJndiLogger logger : ConnectionCorePlugin.getDefault().getJndiLoggers() )
                            {
                                logger.logSearchResultReference( connection, referral, referralsInfo, requestNum, null );
                            }
                            urls.addAll( referral.getLdapUrls() );
                        }
                    }


                    public SearchResult nextElement()
                    {
                        throw new UnsupportedOperationException( "Call next() instead of nextElement() !" ); //$NON-NLS-1$
                    }


                    public boolean hasMoreElements()
                    {
                        throw new UnsupportedOperationException( "Call hasMore() instead of hasMoreElements() !" ); //$NON-NLS-1$
                    }


                    public SearchResult next() throws NamingException
                    {
                        try
                        {
                            LdapUrl url = new LdapUrl( urls.remove( 0 ) );
                            SearchResult searchResult = new SearchResult( url.getDn().getName(), null,
                                new BasicAttributes(),
                                false );
                            searchResult.setNameInNamespace( url.getDn().getName() );
                            StudioSearchResult ssr = new StudioSearchResult( searchResult, null, false, url );
                            return ssr;
                        }
                        catch ( LdapURLEncodingException e )
                        {
                            throw new NamingException( e.getMessage() );
                        }
                    }


                    public boolean hasMore() throws NamingException
                    {
                        return !urls.isEmpty();
                    }


                    public void close() throws NamingException
                    {
                        urls.clear();
                        referralsInfo = null;
                    }
                };
            }
            else if ( referralsHandlingMethod == ReferralHandlingMethod.FOLLOW )
            {
                Referral referral = referralsInfo.getNextReferral();
                for ( IJndiLogger logger : ConnectionCorePlugin.getDefault().getJndiLoggers() )
                {
                    logger.logSearchResultReference( connection, referral, referralsInfo, requestNum, null );
                }
                List<String> urls = new ArrayList<String>( referral.getLdapUrls() );
                LdapUrl url = new LdapUrl( urls.get( 0 ) );
                Connection referralConnection = ConnectionWrapperUtils.getReferralConnection( referral, monitor, this );
                if ( referralConnection != null )
                {
                    done = false;
View Full Code Here

Examples of org.apache.directory.api.ldap.model.message.Referral

     */
    public Referral getNextReferral()
    {
        if ( !referralsToProcess.isEmpty() )
        {
            Referral referral = referralsToProcess.removeFirst();
            for ( String url : referral.getLdapUrls() )
            {
                processedUrls.add( url );
            }
            return referral;
        }
View Full Code Here

Examples of org.apache.directory.ldap.client.api.message.Referral

        ldapResult.setErrorMessage( ldapResultCodec.getErrorMessage() );
        ldapResult.setMatchedDn( ldapResultCodec.getMatchedDN() );

        // Loop on the referrals
        Referral referral = new Referral();

        if ( ldapResultCodec.getReferrals() != null )
        {
            for ( LdapURL url : ldapResultCodec.getReferrals() )
            {
                referral.addLdapUrls( url );
            }
        }

        ldapResult.setReferral( referral );
        ldapResult.setResultCode( ldapResultCodec.getResultCode() );
View Full Code Here

Examples of org.apache.directory.ldap.client.api.message.Referral

        SearchResultReference searchResultReference = new SearchResultReference();

        searchResultReference.setMessageId( searchEntryReferenceCodec.getMessageId() );

        // Loop on the referrals
        Referral referral = new Referral();

        if ( searchEntryReferenceCodec.getSearchResultReferences() != null )
        {
            for ( LdapURL url : searchEntryReferenceCodec.getSearchResultReferences() )
            {
                referral.addLdapUrls( url );
            }
        }

        searchResultReference.setReferral( referral );
        addControls( searchEntryReferenceCodec, searchResultReference );
View Full Code Here

Examples of org.apache.directory.shared.ldap.model.message.Referral

    public int computeLength()
    {
        int searchResultReferenceLength = 0;

        // We may have more than one reference.
        Referral referral = getReferral();

        int referralLength = LdapEncoder.computeReferralLength( referral );

        if ( referralLength != 0 )
        {
View Full Code Here

Examples of org.apache.directory.shared.ldap.model.message.Referral

            // The SearchResultReference Tag
            buffer.put( LdapConstants.SEARCH_RESULT_REFERENCE_TAG );
            buffer.put( TLV.getBytes( getSearchResultReferenceLength() ) );

            // The referrals, if any
            Referral referral = searchResultReference.getReferral();

            if ( referral != null )
            {
                // Each referral
                for ( byte[] ldapUrlBytes : referral.getLdapUrlsBytes() )
                {
                    // Encode the current referral
                    Value.encode( buffer, ldapUrlBytes );
                }
            }
View Full Code Here

Examples of org.apache.directory.shared.ldap.model.message.Referral

        // The error message
        Value.encode( buffer, getErrorMessageBytes() );

        // The referrals, if any
        Referral referral = getReferral();

        if ( referral != null )
        {
            LdapEncoder.encodeReferral( buffer, referral );
        }
View Full Code Here

Examples of org.apache.directory.shared.ldap.model.message.Referral

            Element errorMessageElement = root.addElement( "errorMessage" );
            errorMessageElement.addText( errorMessage );
        }

        // Referrals
        Referral referral = result.getReferral();
        if ( referral != null )
        {
            Collection<String> ldapUrls = referral.getLdapUrls();
            if ( ldapUrls != null )
            {
                for ( String ldapUrl : ldapUrls )
                {
                    Element referalElement = root.addElement( "referal" );
View Full Code Here

Examples of org.apache.directory.shared.ldap.model.message.Referral

        assertEquals( 1, addResponse.getMessageId() );
        assertEquals( ResultCodeEnum.REFERRAL, addResponse.getLdapResult().getResultCode() );
        assertEquals( "", addResponse.getLdapResult().getMatchedDn().getName() );
        assertEquals( "", addResponse.getLdapResult().getErrorMessage() );

        Referral referral = addResponse.getLdapResult().getReferral();

        assertNotNull( referral );
        assertEquals( 1, referral.getLdapUrls().size() );
        Collection<String> ldapUrls = referral.getLdapUrls();

        assertTrue( ldapUrls.contains( "ldap:///" ) );

        try
        {
View Full Code Here

Examples of org.apache.directory.shared.ldap.model.message.Referral

        assertEquals( 1, addResponse.getMessageId() );
        assertEquals( ResultCodeEnum.REFERRAL, addResponse.getLdapResult().getResultCode() );
        assertEquals( "", addResponse.getLdapResult().getMatchedDn().getName() );
        assertEquals( "", addResponse.getLdapResult().getErrorMessage() );

        Referral referral = addResponse.getLdapResult().getReferral();

        assertNotNull( referral );

        assertEquals( 2, referral.getLdapUrls().size() );

        Collection<String> ldapUrls = referral.getLdapUrls();

        for ( String ldapUrl : ldapUrls )
        {
            assertEquals( "ldap:///", ldapUrl );
        }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.