void handleRequest(final String hostId, final DataInput input, final ManagementRequestContext<Void> context) throws IOException {
context.executeAsync(new ManagementRequestContext.AsyncTask<Void>() {
@Override
public void execute(final ManagementRequestContext<Void> context) throws Exception {
try {
final Channel mgmtChannel = context.getChannel();
registry.registerChannel(hostId, mgmtChannel, new ProxyCreatedCallback() {
@Override
public void proxyCreated(final ManagementMessageHandler handler) {
proxyHandler = handler;
mgmtChannel.addCloseHandler(new CloseHandler<Channel>() {
@Override
public void handleClose(Channel closed, IOException exception) {
handler.shutdownNow();
}
});