// Path: src/com/yc/pattern/decorator/coffee/Beverage.java
// public abstract class Beverage {
// 
//     /* 小杯 */
//     public static final String TALL_SIZE = "tall";
//     /* 中杯 */
//     public static final String GRANDE_SIZE = "grande";
//     /* 大杯 */
//     public static final String VENTI_SIZE = "venti";
// 
//     // 默认为小杯
//     private String size;
// 
//     public String getDescription() {
//         return "未知饮料";
//     }
// 
//     public String getSize() {
//         return size;
//     }
// 
//     public void setSize(String size) {
//         this.size = size;
//     }
// 
//     public abstract double cost();
// 
// 
//     @Override
//     public String toString() {
// 
//         String sizeStr = null;
//         if (GRANDE_SIZE.equals(getSize())) {
//             sizeStr = "中杯";
//         } else if (VENTI_SIZE.equals(getSize())) {
//             sizeStr = "大杯";
//         } else {
//             sizeStr = "小杯";
//         }
//         return getDescription() + ", " + sizeStr + " $ " + cost();
//     }
// }
// 
// Path: src/com/yc/pattern/decorator/coffee/CondimentDecorator.java
// public abstract class CondimentDecorator extends Beverage {
// 
//     public abstract String getDescription();
// }


import com.yc.pattern.decorator.coffee.Beverage;
import com.yc.pattern.decorator.coffee.CondimentDecorator;
/*!
 * Copyright(c) 2017 Yue Chang
 * MIT Licensed
 */
package com.yc.pattern.decorator.coffee;


/**
 * @author Yue Chang
 * @ClassName: Soy
 * @Description: 豆浆
 * @date 2017/7/17 14:44
 */
public class Soy extends CondimentDecorator {

    private Beverage beverage;

    @Override
    public String getSize() {
        return beverage.getSize();
    }

// Path: src/com/yc/pattern/decorator/coffee/Beverage.java
// public abstract class Beverage {
// 
//     /* 小杯 */
//     public static final String TALL_SIZE = "tall";
//     /* 中杯 */
//     public static final String GRANDE_SIZE = "grande";
//     /* 大杯 */
//     public static final String VENTI_SIZE = "venti";
// 
//     // 默认为小杯
//     private String size;
// 
//     public String getDescription() {
//         return "未知饮料";
//     }
// 
//     public String getSize() {
//         return size;
//     }
// 
//     public void setSize(String size) {
//         this.size = size;
//     }
// 
//     public abstract double cost();
// 
// 
//     @Override
//     public String toString() {
// 
//         String sizeStr = null;
//         if (GRANDE_SIZE.equals(getSize())) {
//             sizeStr = "中杯";
//         } else if (VENTI_SIZE.equals(getSize())) {
//             sizeStr = "大杯";
//         } else {
//             sizeStr = "小杯";
//         }
//         return getDescription() + ", " + sizeStr + " $ " + cost();
//     }
// }
// 
// Path: src/com/yc/pattern/decorator/coffee/CondimentDecorator.java
// public abstract class CondimentDecorator extends Beverage {
// 
//     public abstract String getDescription();
// }


// Path: src/com/yc/pattern/decorator/coffee/Soy.java
import com.yc.pattern.decorator.coffee.Beverage;
import com.yc.pattern.decorator.coffee.CondimentDecorator;

/*!
 * Copyright(c) 2017 Yue Chang
 * MIT Licensed
 */
package com.yc.pattern.decorator.coffee;


/**
 * @author Yue Chang
 * @ClassName: Soy
 * @Description: 豆浆
 * @date 2017/7/17 14:44
 */
public class Soy extends CondimentDecorator {

    private Beverage beverage;

    @Override
    public String getSize() {
        return beverage.getSize();
    }

    public Soy(Beverage beverage) {