mirror of https://github.com/longtai-cn/hippo4j
Modify some comments and code structure (#986)
* fix : Modify some comments and code structure * fix : Modify some comments and code structurepull/1372/head
parent
d0ab6c932d
commit
4265c9d834
@ -1,50 +0,0 @@
|
|||||||
/*
|
|
||||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
||||||
* contributor license agreements. See the NOTICE file distributed with
|
|
||||||
* this work for additional information regarding copyright ownership.
|
|
||||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
||||||
* (the "License"); you may not use this file except in compliance with
|
|
||||||
* the License. You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package cn.hippo4j.rpc.coder;
|
|
||||||
|
|
||||||
import cn.hippo4j.rpc.exception.CoderException;
|
|
||||||
import io.netty.buffer.ByteBuf;
|
|
||||||
import io.netty.channel.ChannelHandlerContext;
|
|
||||||
import io.netty.handler.codec.serialization.ClassResolver;
|
|
||||||
import io.netty.handler.codec.serialization.ObjectDecoder;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* According to the decoder for java objects implemented by ObjectDecoder,
|
|
||||||
* it is necessary to ensure that the transmitted objects can be serialized
|
|
||||||
*/
|
|
||||||
public class NettyDecoder extends ObjectDecoder {
|
|
||||||
|
|
||||||
public NettyDecoder(ClassResolver classResolver) {
|
|
||||||
super(classResolver);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected Object decode(ChannelHandlerContext ctx, ByteBuf in) {
|
|
||||||
ByteBuf byteBuf = in.retainedDuplicate();
|
|
||||||
try {
|
|
||||||
Object o = super.decode(ctx, in);
|
|
||||||
if (o == null) {
|
|
||||||
return byteBuf;
|
|
||||||
} else {
|
|
||||||
return o;
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
throw new CoderException("The encoding is abnormal, which may be caused by the failure of the transfer object to be deserialized");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in new issue