001// ______________________________________________________
002// Generated by codegen - https://gitee.com/l0km/codegen 
003// template: thrift/client_thrifty/perstruct/bean.decorator.class.vm
004// ______________________________________________________
005package net.gdface.facelog.decorator.client;
006import net.gdface.facelog.Token.TokenType;
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.facelog.Token}<br>
014 * 代理对象必须有默认构造方法,必须是普通类型,不可以有@ThriftStruct注释<br>
015 * 转发所有{@link net.gdface.facelog.Token}get/set方法到{@link #delegate()}指定的实例,<br>
016 * 计算机生成代码(generated by automated tools ThriftServiceDecoratorGenerator @author guyadong)<br>
017 * @author guyadong
018 *
019 */
020@ThriftStruct
021public final class Token implements ThriftDecorator<net.gdface.facelog.Token> {
022    private final net.gdface.facelog.Token delegate;
023    
024    public Token(){
025        this(new net.gdface.facelog.Token());
026    }
027    public Token(net.gdface.facelog.Token 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     * 返回被装饰的{@link net.gdface.facelog.Token}实例
041     * @return
042     */
043    @Override
044    public net.gdface.facelog.Token delegate() {
045        return delegate;
046    }
047    @Override
048    public int hashCode() {
049        return delegate().hashCode();
050    }
051    @Override
052    public boolean equals(Object obj) {
053        return delegate().equals(obj);
054    }
055    @Override
056    public String toString() {
057        return delegate().toString();
058    }
059    @ThriftField(value = 1,requiredness=Requiredness.REQUIRED)
060    public int getId(){
061        return delegate().getId();
062    }
063    
064    @ThriftField
065    public void setId(int value){
066        delegate().setId(value);
067    }
068
069    @ThriftField(value = 2,requiredness=Requiredness.REQUIRED)
070    public int getT1(){
071        return delegate().getT1();
072    }
073    
074    @ThriftField
075    public void setT1(int value){
076        delegate().setT1(value);
077    }
078
079    @ThriftField(value = 3,requiredness=Requiredness.REQUIRED)
080    public int getT2(){
081        return delegate().getT2();
082    }
083    
084    @ThriftField
085    public void setT2(int value){
086        delegate().setT2(value);
087    }
088
089    @ThriftField(value = 4,requiredness=Requiredness.REQUIRED)
090    public int getT3(){
091        return delegate().getT3();
092    }
093    
094    @ThriftField
095    public void setT3(int value){
096        delegate().setT3(value);
097    }
098
099    @ThriftField(value = 5,requiredness=Requiredness.REQUIRED)
100    public int getT4(){
101        return delegate().getT4();
102    }
103    
104    @ThriftField
105    public void setT4(int value){
106        delegate().setT4(value);
107    }
108
109    @ThriftField(value = 6,requiredness=Requiredness.OPTIONAL)
110    public net.gdface.facelog.client.thrift.TokenType getType(){
111        return TypeTransformer.getInstance().to(
112                    delegate().getType(),
113                    TokenType.class,
114                    net.gdface.facelog.client.thrift.TokenType.class);
115    }
116    
117    @ThriftField
118    public void setType(net.gdface.facelog.client.thrift.TokenType value){
119        delegate().setType(TypeTransformer.getInstance().to(
120                    value,
121                    net.gdface.facelog.client.thrift.TokenType.class,
122                    TokenType.class));
123    }
124
125}