Java源码示例:org.apache.flink.shaded.netty4.io.netty.util.ReferenceCountUtil

示例1
private void handleError(ChannelHandlerContext ctx, String errorMessage, HttpResponseStatus responseStatus, @Nullable Throwable e) {
	HttpRequest tmpRequest = currentHttpRequest;
	deleteUploadedFiles();
	reset();
	LOG.warn(errorMessage, e);
	HandlerUtils.sendErrorResponse(
		ctx,
		tmpRequest,
		new ErrorResponseBody(errorMessage),
		responseStatus,
		Collections.emptyMap()
	);
	ReferenceCountUtil.release(tmpRequest);
}
 
示例2
@Override
public ReferenceCounted touch() {
	if (requestAsReferenceCounted.isPresent()) {
		ReferenceCountUtil.touch(requestAsReferenceCounted.get());
	}
	return this;
}
 
示例3
@Override
public ReferenceCounted touch(Object hint) {
	if (requestAsReferenceCounted.isPresent()) {
		ReferenceCountUtil.touch(requestAsReferenceCounted.get(), hint);
	}
	return this;
}
 
示例4
private void handleSsl(ChannelHandlerContext context) {
	SslHandler sslHandler = sslHandlerFactory.createNettySSLHandler();
	try {
		context.pipeline().replace(this, SSL_HANDLER_NAME, sslHandler);
	} catch (Throwable t) {
		ReferenceCountUtil.safeRelease(sslHandler.engine());
		throw t;
	}
}
 
示例5
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
	try {
		ByteBuf buf = (ByteBuf) msg;
		MessageType msgType = MessageSerializer.deserializeHeader(buf);

		if (msgType == MessageType.REQUEST_RESULT) {
			long requestId = MessageSerializer.getRequestId(buf);
			RESP result = serializer.deserializeResponse(buf);
			callback.onRequestResult(requestId, result);
		} else if (msgType == MessageType.REQUEST_FAILURE) {
			RequestFailure failure = MessageSerializer.deserializeRequestFailure(buf);
			callback.onRequestFailure(failure.getRequestId(), failure.getCause());
		} else if (msgType == MessageType.SERVER_FAILURE) {
			throw MessageSerializer.deserializeServerFailure(buf);
		} else {
			throw new IllegalStateException("Unexpected response type '" + msgType + "'");
		}
	} catch (Throwable t1) {
		try {
			callback.onFailure(t1);
		} catch (Throwable t2) {
			LOG.error("Failed to notify callback about failure", t2);
		}
	} finally {
		ReferenceCountUtil.release(msg);
	}
}
 
示例6
private void handleError(ChannelHandlerContext ctx, String errorMessage, HttpResponseStatus responseStatus, @Nullable Throwable e) {
	HttpRequest tmpRequest = currentHttpRequest;
	deleteUploadedFiles();
	reset();
	LOG.warn(errorMessage, e);
	HandlerUtils.sendErrorResponse(
		ctx,
		tmpRequest,
		new ErrorResponseBody(errorMessage),
		responseStatus,
		Collections.emptyMap()
	);
	ReferenceCountUtil.release(tmpRequest);
}
 
示例7
@Override
public ReferenceCounted touch() {
	if (requestAsReferenceCounted.isPresent()) {
		ReferenceCountUtil.touch(requestAsReferenceCounted.get());
	}
	return this;
}
 
示例8
@Override
public ReferenceCounted touch(Object hint) {
	if (requestAsReferenceCounted.isPresent()) {
		ReferenceCountUtil.touch(requestAsReferenceCounted.get(), hint);
	}
	return this;
}
 
示例9
private void handleSsl(ChannelHandlerContext context) {
	SslHandler sslHandler = sslHandlerFactory.createNettySSLHandler(context.alloc());
	try {
		context.pipeline().replace(this, SSL_HANDLER_NAME, sslHandler);
	} catch (Throwable t) {
		ReferenceCountUtil.safeRelease(sslHandler.engine());
		throw t;
	}
}
 
示例10
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
	try {
		ByteBuf buf = (ByteBuf) msg;
		MessageType msgType = MessageSerializer.deserializeHeader(buf);

		if (msgType == MessageType.REQUEST_RESULT) {
			long requestId = MessageSerializer.getRequestId(buf);
			RESP result = serializer.deserializeResponse(buf);
			callback.onRequestResult(requestId, result);
		} else if (msgType == MessageType.REQUEST_FAILURE) {
			RequestFailure failure = MessageSerializer.deserializeRequestFailure(buf);
			callback.onRequestFailure(failure.getRequestId(), failure.getCause());
		} else if (msgType == MessageType.SERVER_FAILURE) {
			throw MessageSerializer.deserializeServerFailure(buf);
		} else {
			throw new IllegalStateException("Unexpected response type '" + msgType + "'");
		}
	} catch (Throwable t1) {
		try {
			callback.onFailure(t1);
		} catch (Throwable t2) {
			LOG.error("Failed to notify callback about failure", t2);
		}
	} finally {
		ReferenceCountUtil.release(msg);
	}
}
 
示例11
private void handleError(ChannelHandlerContext ctx, String errorMessage, HttpResponseStatus responseStatus, @Nullable Throwable e) {
	HttpRequest tmpRequest = currentHttpRequest;
	deleteUploadedFiles();
	reset();
	LOG.warn(errorMessage, e);
	HandlerUtils.sendErrorResponse(
		ctx,
		tmpRequest,
		new ErrorResponseBody(errorMessage),
		responseStatus,
		Collections.emptyMap()
	);
	ReferenceCountUtil.release(tmpRequest);
}
 
示例12
@Override
public ReferenceCounted touch() {
	if (requestAsReferenceCounted.isPresent()) {
		ReferenceCountUtil.touch(requestAsReferenceCounted.get());
	}
	return this;
}
 
示例13
@Override
public ReferenceCounted touch(Object hint) {
	if (requestAsReferenceCounted.isPresent()) {
		ReferenceCountUtil.touch(requestAsReferenceCounted.get(), hint);
	}
	return this;
}
 
示例14
private void handleSsl(ChannelHandlerContext context) {
	SslHandler sslHandler = sslHandlerFactory.createNettySSLHandler(context.alloc());
	try {
		context.pipeline().replace(this, SSL_HANDLER_NAME, sslHandler);
	} catch (Throwable t) {
		ReferenceCountUtil.safeRelease(sslHandler.engine());
		throw t;
	}
}
 
示例15
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
	try {
		ByteBuf buf = (ByteBuf) msg;
		MessageType msgType = MessageSerializer.deserializeHeader(buf);

		if (msgType == MessageType.REQUEST_RESULT) {
			long requestId = MessageSerializer.getRequestId(buf);
			RESP result = serializer.deserializeResponse(buf);
			callback.onRequestResult(requestId, result);
		} else if (msgType == MessageType.REQUEST_FAILURE) {
			RequestFailure failure = MessageSerializer.deserializeRequestFailure(buf);
			callback.onRequestFailure(failure.getRequestId(), failure.getCause());
		} else if (msgType == MessageType.SERVER_FAILURE) {
			throw MessageSerializer.deserializeServerFailure(buf);
		} else {
			throw new IllegalStateException("Unexpected response type '" + msgType + "'");
		}
	} catch (Throwable t1) {
		try {
			callback.onFailure(t1);
		} catch (Throwable t2) {
			LOG.error("Failed to notify callback about failure", t2);
		}
	} finally {
		ReferenceCountUtil.release(msg);
	}
}