// Path: takephoto_library/src/main/java/com/jph/takephoto/model/TImage.java
// public class TImage implements Serializable{
//     private String originalPath;
//     private String compressPath;
//     private FromType fromType;
//     private boolean cropped;
//     private boolean compressed;
//     public static TImage of(String path, FromType fromType){
//         return new TImage(path, fromType);
//     }
//     public static TImage of(Uri uri, FromType fromType){
//         return new TImage(uri, fromType);
//     }
//     private TImage(String path, FromType fromType) {
//         this.originalPath = path;
//         this.fromType = fromType;
//     }
//     private TImage(Uri uri, FromType fromType) {
//         this.originalPath = uri.getPath();
//         this.fromType = fromType;
//     }
// 
//     public String getOriginalPath() {
//         return originalPath;
//     }
// 
//     public void setOriginalPath(String originalPath) {
//         this.originalPath = originalPath;
//     }
// 
//     public String getCompressPath() {
//         return compressPath;
//     }
// 
//     public void setCompressPath(String compressPath) {
//         this.compressPath = compressPath;
//     }
// 
//     public FromType getFromType() {
//         return fromType;
//     }
// 
//     public void setFromType(FromType fromType) {
//         this.fromType = fromType;
//     }
// 
//     public boolean isCropped() {
//         return cropped;
//     }
// 
//     public void setCropped(boolean cropped) {
//         this.cropped = cropped;
//     }
// 
//     public boolean isCompressed() {
//         return compressed;
//     }
// 
//     public void setCompressed(boolean compressed) {
//         this.compressed = compressed;
//     }
// 
//     public enum FromType {
//         CAMERA, OTHER
//     }
// }


import com.jph.takephoto.model.TImage;
import java.util.ArrayList;
package com.jph.takephoto.compress;


/**
 * 压缩照片2.0
 *
 * Author JPH
 * Date 2015-08-26 下午1:44:26
 */
public interface CompressImage {
    void compress();

    /**
     * 压缩结果监听器
     */
    interface CompressListener {
        /**
         * 压缩成功
         * @param images 已经压缩图片
         */
        void onCompressSuccess(ArrayList <TImage> images);

        /**
         * 压缩失败
         * @param images 压缩失败的图片
         * @param msg 失败的原因
         */
// Path: takephoto_library/src/main/java/com/jph/takephoto/model/TImage.java
// public class TImage implements Serializable{
//     private String originalPath;
//     private String compressPath;
//     private FromType fromType;
//     private boolean cropped;
//     private boolean compressed;
//     public static TImage of(String path, FromType fromType){
//         return new TImage(path, fromType);
//     }
//     public static TImage of(Uri uri, FromType fromType){
//         return new TImage(uri, fromType);
//     }
//     private TImage(String path, FromType fromType) {
//         this.originalPath = path;
//         this.fromType = fromType;
//     }
//     private TImage(Uri uri, FromType fromType) {
//         this.originalPath = uri.getPath();
//         this.fromType = fromType;
//     }
// 
//     public String getOriginalPath() {
//         return originalPath;
//     }
// 
//     public void setOriginalPath(String originalPath) {
//         this.originalPath = originalPath;
//     }
// 
//     public String getCompressPath() {
//         return compressPath;
//     }
// 
//     public void setCompressPath(String compressPath) {
//         this.compressPath = compressPath;
//     }
// 
//     public FromType getFromType() {
//         return fromType;
//     }
// 
//     public void setFromType(FromType fromType) {
//         this.fromType = fromType;
//     }
// 
//     public boolean isCropped() {
//         return cropped;
//     }
// 
//     public void setCropped(boolean cropped) {
//         this.cropped = cropped;
//     }
// 
//     public boolean isCompressed() {
//         return compressed;
//     }
// 
//     public void setCompressed(boolean compressed) {
//         this.compressed = compressed;
//     }
// 
//     public enum FromType {
//         CAMERA, OTHER
//     }
// }


// Path: takephoto_library/src/main/java/com/jph/takephoto/compress/CompressImage.java
import com.jph.takephoto.model.TImage;
import java.util.ArrayList;

package com.jph.takephoto.compress;


/**
 * 压缩照片2.0
 *
 * Author JPH
 * Date 2015-08-26 下午1:44:26
 */
public interface CompressImage {
    void compress();

    /**
     * 压缩结果监听器
     */
    interface CompressListener {
        /**
         * 压缩成功
         * @param images 已经压缩图片
         */
        void onCompressSuccess(ArrayList <TImage> images);

        /**
         * 压缩失败
         * @param images 压缩失败的图片
         * @param msg 失败的原因
         */
        void onCompressFailed(ArrayList <TImage> images,String msg);