001// ______________________________________________________
002// Generated by codegen - https://gitee.com/l0km/codegen 
003// template: thrift/service/perstruct/bean.decorator.class.vm
004// ______________________________________________________
005
006package net.gdface.sdk.decorator;
007import net.gdface.thrift.ThriftDecorator;
008import com.facebook.swift.codec.ThriftStruct;
009import com.facebook.swift.codec.ThriftField;
010import com.facebook.swift.codec.ThriftField.Requiredness;
011/**
012 * decorator pattern 装饰者模式代理{@link net.gdface.sdk.FRect}<br>
013 * 代理对象必须有默认构造方法,必须是普通类型,不可以有@ThriftStruct注释<br>
014 * 转发所有{@link net.gdface.sdk.FRect}get/set方法到{@link #delegate()}指定的实例,<br>
015 * 计算机生成代码(generated by automated tools ThriftServiceDecoratorGenerator @author guyadong)<br>
016 * @author guyadong
017 *
018 */
019@ThriftStruct
020public final class FRect implements ThriftDecorator<net.gdface.sdk.FRect> {
021    private final net.gdface.sdk.FRect delegate;
022    
023    public FRect(){
024        this(new net.gdface.sdk.FRect());
025    }
026    public FRect(net.gdface.sdk.FRect delegate) {
027        if(null == delegate){
028            throw new NullPointerException("delegate is null");
029        }
030        // 检查被装饰类是否有@ThriftStruct注释
031        if(delegate.getClass().isAnnotationPresent(ThriftStruct.class)){
032            throw new IllegalArgumentException(
033                String.format("NOT ALLOW %s have @ThriftStruct annotation",delegate.getClass().getName()));
034        }
035        this.delegate = delegate;
036    }
037
038    /**
039     * 返回被装饰的{@link net.gdface.sdk.FRect}实例
040     * @return
041     */
042    @Override
043    public net.gdface.sdk.FRect 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,name = "height",requiredness=Requiredness.REQUIRED)
059    public int getHeight(){
060        return delegate().getHeight();
061    }
062    
063    @ThriftField
064    public void setHeight(int value){
065        delegate().setHeight(value);
066    }
067
068    @ThriftField(value = 2,name = "left",requiredness=Requiredness.REQUIRED)
069    public int getLeft(){
070        return delegate().getLeft();
071    }
072    
073    @ThriftField
074    public void setLeft(int value){
075        delegate().setLeft(value);
076    }
077
078    @ThriftField(value = 3,name = "top",requiredness=Requiredness.REQUIRED)
079    public int getTop(){
080        return delegate().getTop();
081    }
082    
083    @ThriftField
084    public void setTop(int value){
085        delegate().setTop(value);
086    }
087
088    @ThriftField(value = 4,name = "width",requiredness=Requiredness.REQUIRED)
089    public int getWidth(){
090        return delegate().getWidth();
091    }
092    
093    @ThriftField
094    public void setWidth(int value){
095        delegate().setWidth(value);
096    }
097
098}