Package 

Class SimpleResource

  • All Implemented Interfaces:
    com.mobwith.imgmodule.load.engine.Resource

    
    public class SimpleResource<T>
     implements Resource<T>
                        

    Simple wrapper for an arbitrary object which helps to satisfy some of the ImageModule engine's contracts. Suggested usages only include resource object which don't have size and cannot be recycled/closed.

    • Constructor Summary

      Constructors 
      Constructor Description
      SimpleResource(T data)
    • Method Summary

      Modifier and Type Method Description
      Class<T> getResourceClass() Returns the Class of the wrapped resource.
      final T get() Returns an instance of the wrapped resource.
      final int getSize() Returns the size in bytes of the wrapped resource to use to determine how much of the memorycache this resource uses.
      void recycle() Cleans up and recycles internal resources.
      • Methods inherited from class com.mobwith.imgmodule.load.engine.Resource

        get, getResourceClass
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SimpleResource

        SimpleResource(T data)
    • Method Detail

      • get

        @NonNull() final T get()

        Returns an instance of the wrapped resource.

        Note - This does not have to be the same instance of the wrapped resource class and in factit is often appropriate to return a new instance for each call. For example, Drawables should only be used by a single View at a time so each call to this method for Resources that wrap Drawables should always return a new Drawable.

      • getSize

         final int getSize()

        Returns the size in bytes of the wrapped resource to use to determine how much of the memorycache this resource uses.

      • recycle

         void recycle()

        Cleans up and recycles internal resources.

        It is only safe to call this method if there are no current resource consumers and if thismethod has not yet been called. Typically this occurs at one of two times:

        • During a resource load when the resource is transformed or transcoded before any consumerhave ever had access to this resource
        • After all consumers have released this resource and it has been evicted from the cache
        For most users of this class, the only time this method should ever be called is duringtransformations or transcoders, the framework will call this method when all consumers havereleased this resource and it has been evicted from the cache.