Netty - Как передавать информацию между обработчиками в одном конвейере

Я хотел бы создать конвейер обработчиков, таких как:

public ChannelPipeline getPipeline() throws Exception 
{
    return Channels.pipeline(
            new ObjectEncoder(),
            new ObjectDecoder(),
            new AuthenticationServerHandler(),
            new BusinessLogicServerHandler());
}

Ключевым моментом здесь является то, что я бы хотел, чтобы AuthenticationServerHandler мог передавать информацию для входа в BusinessLogicServerHandler .

Я понимаю, что вы можете использовать Attachment , однако оно хранит информацию только для этого обработчика, другие обработчики в конвейере не могут получить к нему доступ. Я также заметил, что что-то было называется ChannelLocal , который может помочь, однако я не могу найти никакой реальной информации о том, как его использовать. Все, что я видел, это то, что люди создают статический экземпляр для него, но как получить и получить доступ к информации в другом обработчике? Если это правильный метод.

My questi on is: как вы передаете информацию между обработчиками в одном конвейере. В приведенном выше примере, как передать учетные данные для входа из AuthenticationServerHandler в BusinessLogicServerHandler ?

6
задан Stephane Grenier 23 January 2012 в 18:12
поделиться