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


Java IoFilterChain类代码示例

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


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

示例1: onPostRemove

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
@Override
public void onPostRemove(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    super.onPostRemove(parent, name, nextFilter);
    IoSession session = parent.getSession();
    if (session == null) {
        return;
    }

    Zlib inflater = (Zlib) session.getAttribute(INFLATER);
    Zlib deflater = (Zlib) session.getAttribute(DEFLATER);
    if (deflater != null) {
        deflater.cleanUp();
    }

    if (inflater != null) {
        inflater.cleanUp();
    }
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:19,代码来源:CompressionFilter.java

示例2: onPreAdd

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
/**
 * Executed just before the filter is added into the chain, we do :
 * <ul>
 * <li>check that we don't have a SSL filter already present
 * <li>we update the next filter
 * <li>we create the SSL handler helper class
 * <li>and we store it into the session's Attributes
 * </ul>
 */
@Override
public void onPreAdd(IoFilterChain parent, String name, NextFilter nextFilter) throws SSLException {
    // Check that we don't have a SSL filter already present in the chain
    if (parent.contains(SslFilter.class)) {
        String msg = "Only one SSL filter is permitted in a chain.";
        LOGGER.error(msg);
        throw new IllegalStateException(msg);
    }

    LOGGER.debug("Adding the SSL Filter {} to the chain", name);

    IoSession session = parent.getSession();
    session.setAttribute(NEXT_FILTER, nextFilter);

    // Create a SSL handler and start handshake.
    SslHandler handler = new SslHandler(this, session);
    handler.init();
    session.setAttribute(SSL_HANDLER, handler);
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:29,代码来源:SslFilter.java

示例3: onPreAdd

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
/**
 * Executed just before the filter is added into the chain, we do :
 * <ul>
 * <li>check that we don't have a SSL filter already present
 * <li>we update the next filter
 * <li>we create the SSL handler helper class
 * <li>and we store it into the session's Attributes
 * </ul>
 */
@Override
public void onPreAdd(IoFilterChain chain, String name, NextFilter nextFilter) throws SSLException {
	// Check that we don't have a SSL filter already present in the chain
	if (chain.getEntry(SslFilter.class) != null) {
		throw new IllegalStateException("Only one SSL filter is permitted in a chain.");
	}

	IoSession session = chain.getSession();

	// Create a SSL handler and start handshake.
	SslHandler sslHandler = new SslHandler(this, session);

	// Adding the supported ciphers in the SSLHandler
	if (enabledCipherSuites == null || enabledCipherSuites.length == 0) {
		enabledCipherSuites = sslContext.getServerSocketFactory().getSupportedCipherSuites();
	}

	sslHandler.init();

	session.setAttribute(SSL_HANDLER, sslHandler);
}
 
开发者ID:dwing4g,项目名称:jane,代码行数:31,代码来源:SslFilter.java

示例4: fireSessionCreated

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
/**
 * Calls {@link IoServiceListener#sessionCreated(IoSession)} for all registered listeners.
 *
 * @param session The session which has been created
 */
public final void fireSessionCreated(IoSession session) {
	boolean firstSession = false;

	if (session.getService() instanceof IoConnector) {
		firstSession = managedSessions.isEmpty();
	}

	// If already registered, ignore.
	if (managedSessions.putIfAbsent(session.getId(), session) != null) {
		return;
	}

	// If the first connector session, fire a virtual service activation event.
	if (firstSession) {
		fireServiceActivated();
	}

	// Fire session events.
	IoFilterChain filterChain = session.getFilterChain();
	filterChain.fireSessionCreated();
	filterChain.fireSessionOpened();
}
 
开发者ID:dwing4g,项目名称:jane,代码行数:28,代码来源:AbstractIoService.java

示例5: buildFilterChain

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
@Override
public void buildFilterChain ( final IoFilterChain chain )
{
    for ( final Entry entry : this.filters )
    {
        final IoFilter filter = entry.getFactory ().create ();
        if ( filter != null )
        {
            chain.addLast ( entry.getName (), filter );
        }
    }

}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:14,代码来源:FilterChainBuilder.java

示例6: onPreAdd

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
@Override
public void onPreAdd(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    if (parent.contains(CompressionFilter.class)) {
        throw new IllegalStateException("Only one " + CompressionFilter.class + " is permitted.");
    }

    Zlib deflater = new Zlib(compressionLevel, Zlib.MODE_DEFLATER);
    Zlib inflater = new Zlib(compressionLevel, Zlib.MODE_INFLATER);

    IoSession session = parent.getSession();

    session.setAttribute(DEFLATER, deflater);
    session.setAttribute(INFLATER, inflater);
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:15,代码来源:CompressionFilter.java

示例7: onPreAdd

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
@Override
public void onPreAdd(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    Class<? extends IoFilterAdapter> clazz = getClass();
    if (parent.contains(clazz)) {
        throw new IllegalStateException("Only one " + clazz.getName() + " is permitted.");
    }
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:8,代码来源:AbstractStreamWriteFilter.java

示例8: onPreAdd

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
@Override
public void onPreAdd(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    if (parent.contains(this)) {
        throw new IllegalArgumentException("You can't add the same filter instance more than once. "
                + "Create another instance and add it.");
    }
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:8,代码来源:KeepAliveFilter.java

示例9: onPreAdd

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
@Override
public void onPreAdd(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    if (parent.contains(this)) {
        throw new IllegalArgumentException(
                "You can't add the same filter instance more than once.  Create another instance and add it.");
    }

    IoSession session = parent.getSession();
    session.setAttribute(RESPONSE_INSPECTOR, responseInspectorFactory.getResponseInspector());
    session.setAttribute(REQUEST_STORE, createRequestStore(session));
    session.setAttribute(UNRESPONDED_REQUEST_STORE, createUnrespondedRequestStore(session));
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:13,代码来源:RequestResponseFilter.java

示例10: onPostRemove

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
@Override
public void onPostRemove(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    IoSession session = parent.getSession();

    destroyUnrespondedRequestStore(getUnrespondedRequestStore(session));
    destroyRequestStore(getRequestStore(session));

    session.removeAttribute(UNRESPONDED_REQUEST_STORE);
    session.removeAttribute(REQUEST_STORE);
    session.removeAttribute(RESPONSE_INSPECTOR);
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:12,代码来源:RequestResponseFilter.java

示例11: onPreRemove

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
@Override
public void onPreRemove(IoFilterChain parent, String name, NextFilter nextFilter) throws SSLException {
    IoSession session = parent.getSession();
    stopSsl(session);
    session.removeAttribute(NEXT_FILTER);
    session.removeAttribute(SSL_HANDLER);
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:8,代码来源:SslFilter.java

示例12: onPreAdd

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
@Override
public void onPreAdd(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    if (parent.contains(this)) {
        throw new IllegalArgumentException(
                "You can't add the same filter instance more than once.  Create another instance and add it.");
    }
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:8,代码来源:ProtocolCodecFilter.java

示例13: onPreAdd

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
public synchronized void onPreAdd(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    if (0 == count) {
        filter.init();
    }

    ++count;

    filter.onPreAdd(parent, name, nextFilter);
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:10,代码来源:ReferenceCountingFilter.java

示例14: onPostRemove

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
public synchronized void onPostRemove(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    filter.onPostRemove(parent, name, nextFilter);

    --count;

    if (0 == count) {
        filter.destroy();
    }
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:10,代码来源:ReferenceCountingFilter.java

示例15: onPreAdd

import org.apache.mina.core.filterchain.IoFilterChain; //导入依赖的package包/类
/**
 * {@inheritDoc}
 */
@Override
public void onPreAdd(IoFilterChain parent, String name, NextFilter nextFilter) throws Exception {
    if (parent.contains(this)) {
        throw new IllegalArgumentException(
                "You can't add the same filter instance more than once.  Create another instance and add it.");
    }
}
 
开发者ID:eclipse,项目名称:neoscada,代码行数:11,代码来源:ExecutorFilter.java


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