// Path: playerSDK/src/main/java/com/kaltura/playersdk/events/KPlayerState.java
// public enum KPlayerState {
//     UNKNOWN("unknown"),
//     LOADED("loadedmetadata"),
//     PRE_LOADED("loadedmetadata"),
//     READY("canplay"),
//     CC_READY("canplay"),
//     PLAYING("play"),
//     PAUSED("pause"),
//     SEEKED("seeked"),
//     SEEKING("seeking"),
//     ENDED("ended");
// 
// 
//     private String stringValue;
//     KPlayerState(String toString) {
//         stringValue = toString;
//     }
// 
//     public static KPlayerState getStateForEventName(String eventName) {
//         switch (eventName) {
//             case "loadedmetadata":
//                 return LOADED;
//             case "canplay":
//                 return READY;
//             case "play":
//                 return PLAYING;
//             case "pause":
//                 return PAUSED;
//             case "seeked":
//                 return SEEKED;
//             case "seeking":
//                 return SEEKING;
//             case "ended":
//                 return ENDED;
//         }
//         return UNKNOWN;
//     }
// 
//     @Override
//     public String toString() {
//         return stringValue;
//     }
// }


import com.kaltura.playersdk.events.KPlayerState;
package com.kaltura.playersdk.interfaces;


/**
 * Created by nissimpardo on 23/02/16.
 */
public interface KMediaControl {
    void start();
    void pause();
    void seek(double seconds);
    void replay();
    boolean canPause();
    int getCurrentPosition();
    int getDuration();
    boolean isPlaying();
    boolean canSeekBackward();
    boolean canSeekForward();
    void seek(long milliSeconds, SeekCallback callback);
    interface SeekCallback {
        void seeked(long milliSeconds);
    }
// Path: playerSDK/src/main/java/com/kaltura/playersdk/events/KPlayerState.java
// public enum KPlayerState {
//     UNKNOWN("unknown"),
//     LOADED("loadedmetadata"),
//     PRE_LOADED("loadedmetadata"),
//     READY("canplay"),
//     CC_READY("canplay"),
//     PLAYING("play"),
//     PAUSED("pause"),
//     SEEKED("seeked"),
//     SEEKING("seeking"),
//     ENDED("ended");
// 
// 
//     private String stringValue;
//     KPlayerState(String toString) {
//         stringValue = toString;
//     }
// 
//     public static KPlayerState getStateForEventName(String eventName) {
//         switch (eventName) {
//             case "loadedmetadata":
//                 return LOADED;
//             case "canplay":
//                 return READY;
//             case "play":
//                 return PLAYING;
//             case "pause":
//                 return PAUSED;
//             case "seeked":
//                 return SEEKED;
//             case "seeking":
//                 return SEEKING;
//             case "ended":
//                 return ENDED;
//         }
//         return UNKNOWN;
//     }
// 
//     @Override
//     public String toString() {
//         return stringValue;
//     }
// }


// Path: playerSDK/src/main/java/com/kaltura/playersdk/interfaces/KMediaControl.java
import com.kaltura.playersdk.events.KPlayerState;

package com.kaltura.playersdk.interfaces;


/**
 * Created by nissimpardo on 23/02/16.
 */
public interface KMediaControl {
    void start();
    void pause();
    void seek(double seconds);
    void replay();
    boolean canPause();
    int getCurrentPosition();
    int getDuration();
    boolean isPlaying();
    boolean canSeekBackward();
    boolean canSeekForward();
    void seek(long milliSeconds, SeekCallback callback);
    interface SeekCallback {
        void seeked(long milliSeconds);
    }
    KPlayerState state();