001// ______________________________________________________
002// Generated by codegen - https://gitee.com/l0km/codegen 
003// template: thrift/client/perstruct/bean.decorator.class.vm
004// ______________________________________________________
005package net.gdface.sdk.fse.decorator.client;
006import java.nio.ByteBuffer;
007import net.gdface.thrift.ThriftDecorator;
008import net.gdface.thrift.TypeTransformer;
009import com.facebook.swift.codec.ThriftStruct;
010import com.facebook.swift.codec.ThriftField;
011import com.facebook.swift.codec.ThriftField.Requiredness;
012/**
013 * decorator pattern 装饰者模式client端代理{@link net.gdface.sdk.fse.CodeBean}<br>
014 * 代理对象必须有默认构造方法,必须是普通类型,不可以有@ThriftStruct注释<br>
015 * 转发所有{@link net.gdface.sdk.fse.CodeBean}get/set方法到{@link #delegate()}指定的实例,<br>
016 * 计算机生成代码(generated by automated tools ThriftServiceDecoratorGenerator @author guyadong)<br>
017 * @author guyadong
018 *
019 */
020@ThriftStruct
021public final class CodeBean implements ThriftDecorator<net.gdface.sdk.fse.CodeBean> {
022    private final net.gdface.sdk.fse.CodeBean delegate;
023    
024    public CodeBean(){
025        this(new net.gdface.sdk.fse.CodeBean());
026    }
027    public CodeBean(net.gdface.sdk.fse.CodeBean delegate) {
028        if(null == delegate){
029            throw new NullPointerException("delegate is null");
030        }
031        // 检查被装饰类是否有@ThriftStruct注释
032        if(delegate.getClass().isAnnotationPresent(ThriftStruct.class)){
033            throw new IllegalArgumentException(
034                String.format("NOT ALLOW %s have @ThriftStruct annotation",delegate.getClass().getName()));
035        }
036        this.delegate = delegate;
037    }
038
039    /**
040     * @return 返回被装饰的{@link net.gdface.sdk.fse.CodeBean}实例
041     */
042    @Override
043    public net.gdface.sdk.fse.CodeBean delegate() {
044        return delegate;
045    }
046    @Override
047    public int hashCode() {
048        return delegate().hashCode();
049    }
050    @Override
051    public boolean equals(Object obj) {
052        return delegate().equals(obj);
053    }
054    @Override
055    public String toString() {
056        return delegate().toString();
057    }
058    @ThriftField(value = 1,requiredness=Requiredness.OPTIONAL)
059    public byte[] getCode(){
060        return delegate().getCode();
061    }
062    
063    @ThriftField
064    public void setCode(byte[] value){
065        delegate().setCode(value);
066    }
067
068    @ThriftField(value = 2,requiredness=Requiredness.OPTIONAL)
069    public byte[] getId(){
070        return delegate().getId();
071    }
072    
073    @ThriftField
074    public void setId(byte[] value){
075        delegate().setId(value);
076    }
077
078    @ThriftField(value = 3,requiredness=Requiredness.OPTIONAL)
079    public String getImgMD5(){
080        return delegate().getImgMD5();
081    }
082    
083    @ThriftField
084    public void setImgMD5(String value){
085        delegate().setImgMD5(value);
086    }
087
088    @ThriftField(value = 4,requiredness=Requiredness.REQUIRED)
089    public double getSimilarity(){
090        return delegate().getSimilarity();
091    }
092    
093    @ThriftField
094    public void setSimilarity(double value){
095        delegate().setSimilarity(value);
096    }
097
098}