Package 

Interface NetworkFetcher


  • 
    public interface NetworkFetcher<FETCH_STATE extends FetchState>
    
                        

    Interface that specifies network fetcher used by the image pipeline.

    It is strongly recommended that implementations use an Executor in their method to execute the network request on a different thread.

    When the fetch from the network fails or is cancelled, the subclass is responsible for calling Callback methods. If these are not called, the pipeline will not know that the image fetch has failed and the application may not behave properly.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      public interface NetworkFetcher.Callback

      Callback used to inform the network fetch producer.

    • Method Detail

      • fetch

         abstract void fetch(FETCH_STATE fetchState, NetworkFetcher.Callback callback)

        Initiates the network fetch and informs the producer when a response is received via theprovided callback.

        Parameters:
        fetchState - the fetch-specific state
        callback - the callback used to inform the network fetch producer
      • shouldPropagate

         abstract boolean shouldPropagate(FETCH_STATE fetchState)

        Gets whether the intermediate results should be propagated.

        In addition to the requirements of this method, intermediate results are throttled sothat a maximum of one every 100 ms is propagated. This is to conserve CPU and other resources.

        Not applicable if progressive rendering is disabled or not supported for this image.

        Parameters:
        fetchState - the fetch-specific state
      • onFetchCompletion

         abstract void onFetchCompletion(FETCH_STATE fetchState, int byteSize)

        Called after the fetch completes.

        Implementing this method is optional and is useful for instrumentation purposes.

        Parameters:
        fetchState - the fetch-specific state
        byteSize - size of the data in bytes
      • getExtraMap

        @Nullable() abstract Map<String, String> getExtraMap(FETCH_STATE fetchState, int byteSize)

        Gets a map containing extra parameters to pass to the listeners.

        Returning map is optional and is useful for instrumentation purposes.

        This map won't be modified by the caller.

        Parameters:
        fetchState - the fetch-specific state
        byteSize - size of the data in bytes