// Path: app/src/mock/java/com/michaelvescovo/android/itemreaper/util/FakeImageFileImpl.java
// public class FakeImageFileImpl implements ImageFile, Serializable {
// 
//     @SuppressWarnings("WeakerAccess")
//     @VisibleForTesting
//     File mImageFile;
// 
//     @Override
//     public void create(Context context, String name, String extension) {
//         File storageDir = context.getFilesDir();
//         try {
//             mImageFile = File.createTempFile(
//                     name,  /* prefix */
//                     extension,        /* suffix */
//                     storageDir      /* directory */
//             );
//             mImageFile.deleteOnExit();
//         } catch (IOException e) {
//             e.printStackTrace();
//         }
// 
//         // For the fake image file, copy the sample image in assets to the file.
//         InputStream inputStream = null;
//         OutputStream outputStream = null;
//         try {
//             inputStream = context.getAssets().open("black-t-shirt.jpg");
//             outputStream = new FileOutputStream(mImageFile);
//             copyFile(inputStream, outputStream);
//         } catch (IOException e) {
//             e.printStackTrace();
//         }
//         finally {
//             if (inputStream != null) {
//                 try {
//                     inputStream.close();
//                 } catch (IOException ignore) {}
//             }
//             if (outputStream != null) {
//                 try {
//                     outputStream.close();
//                 } catch (IOException ignore) {}
//             }
//         }
//     }
// 
//     private void copyFile(InputStream inputStream, OutputStream outputStream) throws IOException {
//         byte[] buffer = new byte[1024];
//         int read;
//         while((read = inputStream.read(buffer)) != -1){
//             outputStream.write(buffer, 0, read);
//         }
//     }
// 
//     @Override
//     public String getPath() {
//         return "file:///android_asset/black-t-shirt.jpg";
//     }
// 
//     @Override
//     public boolean exists() {
//         return true;
//     }
// 
//     @Override
//     public void delete(Context context) {
//         // Do nothing
//     }
// 
//     @Override
//     public Uri getUri(Context context) {
//         return FileProvider.getUriForFile(context,
//                 context.getPackageName() + ".fileprovider", mImageFile);
//     }
// }
// 
// Path: app/src/main/java/com/michaelvescovo/android/itemreaper/util/ImageFile.java
// public interface ImageFile {
//     void create(Context context, String name, String extension);
// 
//     boolean exists();
// 
//     void delete(Context context);
// 
//     Uri getUri(Context context);
// 
//     String getPath();
// }


import com.michaelvescovo.android.itemreaper.util.FakeImageFileImpl;
import com.michaelvescovo.android.itemreaper.util.ImageFile;
import dagger.Module;
import dagger.Provides;
package com.michaelvescovo.android.itemreaper.edit_item;



/**
 * @author Michael Vescovo
 */

@Module
public class EditItemModule {

    private EditItemContract.View mView;

    public EditItemModule(EditItemContract.View view) {
        mView = view;
    }

    @Provides
    EditItemContract.View provideEditItemView() {
        return mView;
    }

    @Provides
// Path: app/src/mock/java/com/michaelvescovo/android/itemreaper/util/FakeImageFileImpl.java
// public class FakeImageFileImpl implements ImageFile, Serializable {
// 
//     @SuppressWarnings("WeakerAccess")
//     @VisibleForTesting
//     File mImageFile;
// 
//     @Override
//     public void create(Context context, String name, String extension) {
//         File storageDir = context.getFilesDir();
//         try {
//             mImageFile = File.createTempFile(
//                     name,  /* prefix */
//                     extension,        /* suffix */
//                     storageDir      /* directory */
//             );
//             mImageFile.deleteOnExit();
//         } catch (IOException e) {
//             e.printStackTrace();
//         }
// 
//         // For the fake image file, copy the sample image in assets to the file.
//         InputStream inputStream = null;
//         OutputStream outputStream = null;
//         try {
//             inputStream = context.getAssets().open("black-t-shirt.jpg");
//             outputStream = new FileOutputStream(mImageFile);
//             copyFile(inputStream, outputStream);
//         } catch (IOException e) {
//             e.printStackTrace();
//         }
//         finally {
//             if (inputStream != null) {
//                 try {
//                     inputStream.close();
//                 } catch (IOException ignore) {}
//             }
//             if (outputStream != null) {
//                 try {
//                     outputStream.close();
//                 } catch (IOException ignore) {}
//             }
//         }
//     }
// 
//     private void copyFile(InputStream inputStream, OutputStream outputStream) throws IOException {
//         byte[] buffer = new byte[1024];
//         int read;
//         while((read = inputStream.read(buffer)) != -1){
//             outputStream.write(buffer, 0, read);
//         }
//     }
// 
//     @Override
//     public String getPath() {
//         return "file:///android_asset/black-t-shirt.jpg";
//     }
// 
//     @Override
//     public boolean exists() {
//         return true;
//     }
// 
//     @Override
//     public void delete(Context context) {
//         // Do nothing
//     }
// 
//     @Override
//     public Uri getUri(Context context) {
//         return FileProvider.getUriForFile(context,
//                 context.getPackageName() + ".fileprovider", mImageFile);
//     }
// }
// 
// Path: app/src/main/java/com/michaelvescovo/android/itemreaper/util/ImageFile.java
// public interface ImageFile {
//     void create(Context context, String name, String extension);
// 
//     boolean exists();
// 
//     void delete(Context context);
// 
//     Uri getUri(Context context);
// 
//     String getPath();
// }


// Path: app/src/mock/java/com/michaelvescovo/android/itemreaper/edit_item/EditItemModule.java
import com.michaelvescovo.android.itemreaper.util.FakeImageFileImpl;
import com.michaelvescovo.android.itemreaper.util.ImageFile;
import dagger.Module;
import dagger.Provides;

package com.michaelvescovo.android.itemreaper.edit_item;



/**
 * @author Michael Vescovo
 */

@Module
public class EditItemModule {

    private EditItemContract.View mView;

    public EditItemModule(EditItemContract.View view) {
        mView = view;
    }

    @Provides
    EditItemContract.View provideEditItemView() {
        return mView;
    }

    @Provides
    ImageFile provideImageFile() {