// Path: src/milk/telegram/type/Textable.java
// public interface Textable{
// 
//     String getText();
// }
// 
// Path: src/milk/telegram/type/file/media/Video.java
// public class Video implements Identifier<String>{
// 
//     private final String id;
// 
//     private final String mime_type;
// 
//     private final int width;
//     private final int height;
//     private final int duration;
// 
//     private final PhotoSize thumb;
// 
//     private final Integer size;
// 
//     private Video(JSONObject object){
//         this.id = object.getString("file_id");
// 
//         this.width = object.getInt("width");
//         this.height = object.getInt("height");
//         this.duration = object.getInt("duration");
// 
//         this.thumb = PhotoSize.create(object.optJSONObject("thumb"));
//         this.mime_type = object.optString("mime_type");
// 
//         this.size = object.has("file_size") ? object.getInt("file_size") : null;
//     }
// 
//     public static Video create(JSONObject object){
//         if(object == null){
//             return null;
//         }
//         return new Video(object);
//     }
// 
//     public String getId(){
//         return id;
//     }
// 
//     public int getWidth(){
//         return width;
//     }
// 
//     public int getHeight(){
//         return height;
//     }
// 
//     public int getDuration(){
//         return duration;
//     }
// 
//     public PhotoSize getThumb(){
//         return thumb;
//     }
// 
//     public Integer getSize(){
//         return size;
//     }
// 
//     public String getMimeYype(){
//         return mime_type;
//     }
// 
// }


import milk.telegram.type.Textable;
import milk.telegram.type.file.media.Video;
import org.json.JSONObject;
package milk.telegram.type.message;


public class VideoMessage extends Message implements Textable{

    private Video video;
    private String caption;

    public VideoMessage(JSONObject object){
        super(object);
        this.caption = object.optString("caption", null);
        this.video = Video.create(object.getJSONObject("video"));
    }

    public Video getVideo(){
        return this.video;
    }

    public String getText(){
// Path: src/milk/telegram/type/Textable.java
// public interface Textable{
// 
//     String getText();
// }
// 
// Path: src/milk/telegram/type/file/media/Video.java
// public class Video implements Identifier<String>{
// 
//     private final String id;
// 
//     private final String mime_type;
// 
//     private final int width;
//     private final int height;
//     private final int duration;
// 
//     private final PhotoSize thumb;
// 
//     private final Integer size;
// 
//     private Video(JSONObject object){
//         this.id = object.getString("file_id");
// 
//         this.width = object.getInt("width");
//         this.height = object.getInt("height");
//         this.duration = object.getInt("duration");
// 
//         this.thumb = PhotoSize.create(object.optJSONObject("thumb"));
//         this.mime_type = object.optString("mime_type");
// 
//         this.size = object.has("file_size") ? object.getInt("file_size") : null;
//     }
// 
//     public static Video create(JSONObject object){
//         if(object == null){
//             return null;
//         }
//         return new Video(object);
//     }
// 
//     public String getId(){
//         return id;
//     }
// 
//     public int getWidth(){
//         return width;
//     }
// 
//     public int getHeight(){
//         return height;
//     }
// 
//     public int getDuration(){
//         return duration;
//     }
// 
//     public PhotoSize getThumb(){
//         return thumb;
//     }
// 
//     public Integer getSize(){
//         return size;
//     }
// 
//     public String getMimeYype(){
//         return mime_type;
//     }
// 
// }


// Path: src/milk/telegram/type/message/VideoMessage.java
import milk.telegram.type.Textable;
import milk.telegram.type.file.media.Video;
import org.json.JSONObject;

package milk.telegram.type.message;


public class VideoMessage extends Message implements Textable{

    private Video video;
    private String caption;

    public VideoMessage(JSONObject object){
        super(object);
        this.caption = object.optString("caption", null);
        this.video = Video.create(object.getJSONObject("video"));
    }

    public Video getVideo(){
        return this.video;
    }

    public String getText(){
        return this.caption;