package com.apollographql.apollo;

import java.io.IOException;

import javax.annotation.Nonnull;
import javax.annotation.Nullable;

public interface ApolloPrefetch {

  void execute() throws IOException;

  @Nonnull ApolloPrefetch enqueue(@Nullable Callback callback);

  ApolloPrefetch clone();

  void cancel();

  interface Callback {
    void onSuccess();

    void onFailure(@Nonnull Throwable t);
  }
}

@@ -28,16 +28,75 @@
 pollo;%0A%0A
+import com.apollographql.apollo.internal.util.Cancelable;%0A%0A
 import j
@@ -115,16 +115,16 @@
 eption;%0A
-
 %0Aimport 
@@ -216,16 +216,35 @@
 refetch 
+extends Cancelable 
 %7B%0A%0A  voi
@@ -341,16 +341,16 @@
 back);%0A%0A
+
   Apollo
@@ -372,26 +372,8 @@
 );%0A%0A
-  void cancel();%0A%0A
   in

Add Cancelable as the superclass of ApolloPrefetch (#383)