當前位置: 首頁>>代碼示例>>Java>>正文


Java LdapReferralException類代碼示例

本文整理匯總了Java中org.apache.directory.api.ldap.model.exception.LdapReferralException的典型用法代碼示例。如果您正苦於以下問題:Java LdapReferralException類的具體用法?Java LdapReferralException怎麽用?Java LdapReferralException使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


LdapReferralException類屬於org.apache.directory.api.ldap.model.exception包,在下文中一共展示了LdapReferralException類的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: getEntry

import org.apache.directory.api.ldap.model.exception.LdapReferralException; //導入依賴的package包/類
/**
 * {@inheritDoc}
 */
@Override
public Entry getEntry() throws LdapException
{
    if ( isEntry() )
    {
        return ( ( SearchResultEntry ) response ).getEntry();
    }
    
    if ( isReferral() )
    {
        Referral referral = ( ( SearchResultReference ) response ).getReferral();
        throw new LdapReferralException( referral.getLdapUrls() );
    }

    throw new LdapException();
}
 
開發者ID:apache,項目名稱:directory-ldap-api,代碼行數:20,代碼來源:SearchCursorImpl.java

示例2: CursorLdapReferralException

import org.apache.directory.api.ldap.model.exception.LdapReferralException; //導入依賴的package包/類
/**
 * Creates a new instance of CursorClosedException.
 *
 * @param ldapReferralException The associated exception
 * @param message The associated message
 */
public CursorLdapReferralException( LdapReferralException ldapReferralException, String message )
{
    super( message );

    this.ldapReferralException = ldapReferralException;
}
 
開發者ID:apache,項目名稱:directory-ldap-api,代碼行數:13,代碼來源:CursorLdapReferralException.java

示例3: get

import org.apache.directory.api.ldap.model.exception.LdapReferralException; //導入依賴的package包/類
/**
 * {@inheritDoc}
 */
@Override
public Entry get() throws CursorException
{
    if ( !searchCursor.available() )
    {
        throw new InvalidCursorPositionException();
    }

    try
    {
        do
        {
            if ( response instanceof SearchResultEntry )
            {
                return ( ( SearchResultEntry ) response ).getEntry();
            }

            if ( response instanceof SearchResultReference )
            {
                throw new LdapReferralException( ( ( SearchResultReference ) response ).getReferral().getLdapUrls() );
            }
        }
        while ( next() && !( response instanceof SearchResultDone ) );
    }
    catch ( LdapReferralException lre )
    {
        throw new CursorLdapReferralException( lre );
    }
    catch ( Exception e )
    {
        throw new CursorException( e );
    }

    return null;
}
 
開發者ID:apache,項目名稱:directory-ldap-api,代碼行數:39,代碼來源:EntryCursorImpl.java

示例4: buildReferralException

import org.apache.directory.api.ldap.model.exception.LdapReferralException; //導入依賴的package包/類
private LdapReferralException buildReferralException( Entry parentEntry, Dn childDn ) throws LdapException
{
    // Get the Ref attributeType
    Attribute refs = parentEntry.get( SchemaConstants.REF_AT );

    List<String> urls = new ArrayList<String>();

    try
    {
        // manage each Referral, building the correct URL for each of them
        for ( Value<?> url : refs )
        {
            // we have to replace the parent by the referral
            LdapUrl ldapUrl = new LdapUrl( url.getString() );

            // We have a problem with the Dn : we can't use the UpName,
            // as we may have some spaces around the ',' and '+'.
            // So we have to take the Rdn one by one, and create a
            // new Dn with the type and value UP form

            Dn urlDn = ldapUrl.getDn().add( childDn );

            ldapUrl.setDn( urlDn );
            urls.add( ldapUrl.toString() );
        }
    }
    catch ( LdapURLEncodingException luee )
    {
        throw new LdapOperationErrorException( luee.getMessage(), luee );
    }

    // Return with an exception
    LdapReferralException lre = new LdapReferralException( urls );
    lre.setRemainingDn( childDn );
    lre.setResolvedDn( parentEntry.getDn() );
    lre.setResolvedObject( parentEntry );

    return lre;
}
 
開發者ID:TremoloSecurity,項目名稱:MyVirtualDirectory,代碼行數:40,代碼來源:DefaultOperationManager.java

示例5: WrappedReferralException

import org.apache.directory.api.ldap.model.exception.LdapReferralException; //導入依賴的package包/類
WrappedReferralException( LdapReferralException lre )
{
    this.lre = lre;
}
 
開發者ID:apache,項目名稱:directory-ldap-api,代碼行數:5,代碼來源:JndiUtils.java

示例6: buildReferralExceptionForSearch

import org.apache.directory.api.ldap.model.exception.LdapReferralException; //導入依賴的package包/類
private LdapReferralException buildReferralExceptionForSearch( Entry parentEntry, Dn childDn, SearchScope scope )
    throws LdapException
{
    // Get the Ref attributeType
    Attribute refs = parentEntry.get( SchemaConstants.REF_AT );

    List<String> urls = new ArrayList<String>();

    // manage each Referral, building the correct URL for each of them
    for ( Value<?> url : refs )
    {
        // we have to replace the parent by the referral
        try
        {
            LdapUrl ldapUrl = new LdapUrl( url.getString() );

            StringBuilder urlString = new StringBuilder();

            if ( ( ldapUrl.getDn() == null ) || ( ldapUrl.getDn() == Dn.ROOT_DSE ) )
            {
                ldapUrl.setDn( parentEntry.getDn() );
            }
            else
            {
                // We have a problem with the Dn : we can't use the UpName,
                // as we may have some spaces around the ',' and '+'.
                // So we have to take the Rdn one by one, and create a
                // new Dn with the type and value UP form

                Dn urlDn = ldapUrl.getDn().add( childDn );

                ldapUrl.setDn( urlDn );
            }

            urlString.append( ldapUrl.toString() ).append( "??" );

            switch ( scope )
            {
                case OBJECT:
                    urlString.append( "base" );
                    break;

                case SUBTREE:
                    urlString.append( "sub" );
                    break;

                case ONELEVEL:
                    urlString.append( "one" );
                    break;
            }

            urls.add( urlString.toString() );
        }
        catch ( LdapURLEncodingException luee )
        {
            // The URL is not correct, returns it as is
            urls.add( url.getString() );
        }
    }

    // Return with an exception
    LdapReferralException lre = new LdapReferralException( urls );
    lre.setRemainingDn( childDn );
    lre.setResolvedDn( parentEntry.getDn() );
    lre.setResolvedObject( parentEntry );

    return lre;
}
 
開發者ID:TremoloSecurity,項目名稱:MyVirtualDirectory,代碼行數:69,代碼來源:DefaultOperationManager.java


注:本文中的org.apache.directory.api.ldap.model.exception.LdapReferralException類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。