当前位置: 首页>>代码示例>>Java>>正文


Java LdapReferralException.setResolvedDn方法代码示例

本文整理汇总了Java中org.apache.directory.api.ldap.model.exception.LdapReferralException.setResolvedDn方法的典型用法代码示例。如果您正苦于以下问题:Java LdapReferralException.setResolvedDn方法的具体用法?Java LdapReferralException.setResolvedDn怎么用?Java LdapReferralException.setResolvedDn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.directory.api.ldap.model.exception.LdapReferralException的用法示例。


在下文中一共展示了LdapReferralException.setResolvedDn方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: 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

示例2: 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.setResolvedDn方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。