// Path: src/se/vidstige/jadb/JadbException.java
// public class JadbException extends Exception {
// 
//     public JadbException(String message) {
//         super(message);
//     }
// 
//     private static final long serialVersionUID = -3879283786835654165L;
// }
// 
// Path: src/se/vidstige/jadb/RemoteFile.java
// public class RemoteFile {
//     private final String path;
// 
//     public RemoteFile(String path) { this.path = path; }
// 
//     public String getName() { throw new UnsupportedOperationException(); }
//     public int getSize() { throw new UnsupportedOperationException(); }
//     public int getLastModified() { throw new UnsupportedOperationException(); }
//     public boolean isDirectory() { throw new UnsupportedOperationException(); }
// 
//     public String getPath() { return path;}
// 
//     @Override
//     public boolean equals(Object o) {
//         if (this == o) return true;
//         if (o == null || getClass() != o.getClass()) return false;
// 
//         RemoteFile that = (RemoteFile) o;
//         return path.equals(that.path);
//     }
// 
//     @Override
//     public int hashCode() {
//         return path.hashCode();
//     }
// }


import se.vidstige.jadb.JadbException;
import se.vidstige.jadb.RemoteFile;
import java.io.*;
import java.util.List;
package se.vidstige.jadb.server;



/**
 * Created by vidstige on 20/03/14.
 */
public interface AdbDeviceResponder {
    String getSerial();
    String getType();

    void filePushed(RemoteFile path, int mode, ByteArrayOutputStream buffer) throws JadbException;
// Path: src/se/vidstige/jadb/JadbException.java
// public class JadbException extends Exception {
// 
//     public JadbException(String message) {
//         super(message);
//     }
// 
//     private static final long serialVersionUID = -3879283786835654165L;
// }
// 
// Path: src/se/vidstige/jadb/RemoteFile.java
// public class RemoteFile {
//     private final String path;
// 
//     public RemoteFile(String path) { this.path = path; }
// 
//     public String getName() { throw new UnsupportedOperationException(); }
//     public int getSize() { throw new UnsupportedOperationException(); }
//     public int getLastModified() { throw new UnsupportedOperationException(); }
//     public boolean isDirectory() { throw new UnsupportedOperationException(); }
// 
//     public String getPath() { return path;}
// 
//     @Override
//     public boolean equals(Object o) {
//         if (this == o) return true;
//         if (o == null || getClass() != o.getClass()) return false;
// 
//         RemoteFile that = (RemoteFile) o;
//         return path.equals(that.path);
//     }
// 
//     @Override
//     public int hashCode() {
//         return path.hashCode();
//     }
// }


// Path: src/se/vidstige/jadb/server/AdbDeviceResponder.java
import se.vidstige.jadb.JadbException;
import se.vidstige.jadb.RemoteFile;
import java.io.*;
import java.util.List;

package se.vidstige.jadb.server;



/**
 * Created by vidstige on 20/03/14.
 */
public interface AdbDeviceResponder {
    String getSerial();
    String getType();

    void filePushed(RemoteFile path, int mode, ByteArrayOutputStream buffer) throws JadbException;
    void filePulled(RemoteFile path, ByteArrayOutputStream buffer) throws JadbException, IOException;