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


Java ExtendedRequest类代码示例

本文整理汇总了Java中javax.naming.ldap.ExtendedRequest的典型用法代码示例。如果您正苦于以下问题:Java ExtendedRequest类的具体用法?Java ExtendedRequest怎么用?Java ExtendedRequest使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: preCheckExtendedOperation

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
protected void preCheckExtendedOperation( final ExtendedRequest request )
        throws ChaiOperationException
{
    final boolean cacheFailures = "true".equalsIgnoreCase( this.getChaiConfiguration().getSetting( ChaiSetting.EXTENDED_OPERATION_FAILURE_CACHE ) );
    if ( cacheFailures )
    {
        final Map<String, Object> providerProps = this.getProviderProperties();
        final Map<String, Exception> cacheFailureMap = ( Map<String, Exception> ) providerProps.get( EXTENDED_FAILURE_CACHE_KEY );
        final String requestID = request.getID();
        if ( cacheFailureMap.containsKey( requestID ) )
        {
            LOGGER.debug( "previous extended operation request for " + requestID + " has failed, reissuing cached exception without attempting operation" );
            throw ( ChaiOperationException ) cacheFailureMap.get( requestID );
        }
    }
}
 
开发者ID:ldapchai,项目名称:ldapchai,代码行数:17,代码来源:AbstractProvider.java

示例2: cacheExtendedOperationException

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
protected void cacheExtendedOperationException( final ExtendedRequest request, final Exception e )
        throws ChaiOperationException
{
    final boolean cacheFailures = this.getChaiConfiguration().getBooleanSetting( ChaiSetting.EXTENDED_OPERATION_FAILURE_CACHE );
    if ( cacheFailures )
    {
        final ChaiOperationException opExcep = ChaiOperationException.forErrorMessage( e.getMessage() );
        if ( opExcep.getErrorCode() == ChaiError.UNSUPPORTED_OPERATION )
        {
            final Map<String, Object> providerProps = this.getProviderProperties();
            final Map<String, Exception> cacheFailureMap = ( Map<String, Exception> ) providerProps.get( EXTENDED_FAILURE_CACHE_KEY );
            final String requestID = request.getID();
            cacheFailureMap.put( requestID, opExcep );
            LOGGER.trace( "caching extended operation for " + requestID );
            throw opExcep;
        }
    }
}
 
开发者ID:ldapchai,项目名称:ldapchai,代码行数:19,代码来源:AbstractProvider.java

示例3: extendedOperation

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
public ExtendedResponse extendedOperation(ExtendedRequest request)
        throws NamingException {
    ExtendedOp op = new ExtendedOp(request);
    try {
        doBasicOperation(op);
    } catch (ReferralException e) {
        if (isFollowReferral(e)) {
            LdapContext referralContext = (LdapContext) getReferralContext(e);
            return referralContext.extendedOperation(request);
        }
        throw e;
    }
    ExtendedResponse response = op.getExtendedResponse();
    // set existing underlying socket to startTls extended response
    if (response instanceof StartTlsResponseImpl) {
        ((StartTlsResponseImpl) response).setSocket(client.getSocket());
    }
    return response;
}
 
开发者ID:shannah,项目名称:cn1,代码行数:20,代码来源:LdapContextImpl.java

示例4: extendedOperation

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
public final ExtendedResponse extendedOperation( final ExtendedRequest request )
{
    if ( request == null )
    {
        throw new NullPointerException( "request must not be null" );
    }

    return null;
}
 
开发者ID:ldapchai,项目名称:ldapchai,代码行数:10,代码来源:AbstractProvider.java

示例5: extendedOperation

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
@LdapOperation
@ModifyOperation
public final ExtendedResponse extendedOperation( final ExtendedRequest request )
        throws ChaiUnavailableException, ChaiOperationException

{
    activityPreCheck();

    getInputValidator().extendedOperation( request );

    preCheckExtendedOperation( request );

    final LdapContext ldapConnection = getLdapConnection();
    try
    {
        return ldapConnection.extendedOperation( request );
    }
    catch ( NamingException e )
    {
        cacheExtendedOperationException( request, e );

        // guaranteedb to throw ChaiException
        convertNamingException( e );
    }

    return null;
}
 
开发者ID:ldapchai,项目名称:ldapchai,代码行数:28,代码来源:JNDIProviderImpl.java

示例6: extendedOperation

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
/**
 * <p>This method is performs an extended operation.</p>
 * @param arg0 The extended request for the operation.
 * @return ExtendedResponse The extended response of this operation.
 */
public ExtendedResponse extendedOperation(ExtendedRequest arg0)	throws NamingException , NullPointerException{

	if(arg0==null) throw new NullPointerException();
	if(arg0.getID()=="1.3.6.1.4.1.1466.20037") return new MockStartTlsResponse();
	return null;
}
 
开发者ID:shannah,项目名称:cn1,代码行数:12,代码来源:MockInitialLdapContext.java

示例7: ExtendedOp

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
public void test_encodeValues_$LObject() {
    ExtendedOp op = new ExtendedOp(new MockExtendedRequest());

    ASN1TestUtils.checkEncode(op, LdapASN1Constant.ExtendedRequest);

    assertEquals(LdapASN1Constant.OP_EXTENDED_REQUEST, op.getRequestId());
    assertEquals(LdapASN1Constant.OP_EXTENDED_RESPONSE, op.getResponseId());
    assertSame(op, op.getRequest());
    assertSame(op, op.getResponse());
}
 
开发者ID:shannah,项目名称:cn1,代码行数:11,代码来源:ExtendedOpTest.java

示例8: extendedOperation

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
/**
 * @see javax.naming.ldap.LdapContext#extendedOperation(javax.naming.ldap.ExtendedRequest)
 */
@Override
public ExtendedResponse extendedOperation(final ExtendedRequest request) throws NamingException {
    return (ExtendedResponse) new LoggingRetryHandler(DEFAULT_EXCEPTION_CLASSES, this, getSchedule(), getMaxRetries(), getLogger()){

        @Override
        public Object operation() throws NamingException {
            return ((LdapContext) getDelegate()).extendedOperation(request);
        }}.perform();
}
 
开发者ID:twachan,项目名称:James,代码行数:13,代码来源:RetryingLdapContext.java

示例9: callStoredProcedure

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
/**
 * Invoke a Stored Procedure
 * 
 * @param ctx The execution context
 * @param procedureName The procedure to execute
 * @param arguments The procedure's arguments
 * @return The execution resut
 * @throws NamingException If we have had an error whil executing the stored procedure
 */
public static Object callStoredProcedure( LdapContext ctx, String procedureName, Object[] arguments )
    throws NamingException
{
    String language = "Java";

    Object responseObject;
    try
    {
        /**
         * Create a new stored procedure execution request.
         */
        StoredProcedureRequestImpl req = new StoredProcedureRequestImpl( 0, procedureName, language );

        /**
         * For each argument UTF-8-encode the type name
         * and Java-serialize the value
         * and add them to the request as a parameter object.
         */
        for ( int i = 0; i < arguments.length; i++ )
        {
            byte[] type;
            byte[] value;
            type = arguments[i].getClass().getName().getBytes( "UTF-8" );
            value = SerializationUtils.serialize( ( Serializable ) arguments[i] );
            req.addParameter( type, value );
        }

        /**
         * Call the stored procedure via the extended operation
         * and get back its return value.
         */
        ExtendedRequest jndiReq = LdapApiServiceFactory.getSingleton().toJndi( req );
        ExtendedResponse resp = ctx.extendedOperation( jndiReq );

        /**
         * Restore a Java object from the return value.
         */
        byte[] responseStream = resp.getEncodedValue();
        responseObject = SerializationUtils.deserialize( responseStream );
    }
    catch ( Exception e )
    {
        NamingException ne = new NamingException();
        ne.setRootCause( e );
        throw ne;
    }

    return responseObject;
}
 
开发者ID:apache,项目名称:directory-ldap-api,代码行数:59,代码来源:JavaStoredProcUtils.java

示例10: preCheckExtendedOperation

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
@Override
protected void preCheckExtendedOperation( final ExtendedRequest request )
        throws ChaiOperationException
{
    super.preCheckExtendedOperation( request );
}
 
开发者ID:ldapchai,项目名称:ldapchai,代码行数:7,代码来源:ApacheLdapProviderImpl.java

示例11: cacheExtendedOperationException

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
@Override
protected void cacheExtendedOperationException( final ExtendedRequest request, final Exception e )
        throws ChaiOperationException
{
    super.cacheExtendedOperationException( request, e );
}
 
开发者ID:ldapchai,项目名称:ldapchai,代码行数:7,代码来源:ApacheLdapProviderImpl.java

示例12: extendedOperation

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
@Override
public ExtendedResponse extendedOperation( final ExtendedRequest request )
        throws ChaiOperationException, ChaiUnavailableException, IllegalStateException
{
    return providerHolder.getProvider().extendedOperation( request );
}
 
开发者ID:ldapchai,项目名称:ldapchai,代码行数:7,代码来源:WatchdogWrapper.java

示例13: extendedOperation

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
public ExtendedResponse extendedOperation(ExtendedRequest request)
		throws NamingException {
	return initCtx.extendedOperation(request);
}
 
开发者ID:kenweezy,项目名称:teiid,代码行数:5,代码来源:LDAPConnectionImpl.java

示例14: ExtendedOp

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
public ExtendedOp(ExtendedRequest request) {
    this.request = request;
}
 
开发者ID:shannah,项目名称:cn1,代码行数:4,代码来源:ExtendedOp.java

示例15: getExtendedRequest

import javax.naming.ldap.ExtendedRequest; //导入依赖的package包/类
public ExtendedRequest getExtendedRequest() {
    return request;
}
 
开发者ID:shannah,项目名称:cn1,代码行数:4,代码来源:ExtendedOp.java


注:本文中的javax.naming.ldap.ExtendedRequest类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。