docs: public static void loadCompressedTexture(final GVRContext gvrContext,
              final ResourceCache<GVRImage> textureCache,
              final CompressedTextureCallback callback,
              final GVRAndroidResource resource, final int quality)
              throws IllegalArgumentException {
          validateCallbackParameters(gvrContext, callback, resource);
  
          final GVRImage cached = textureCache == null ? null : textureCache
                  .get(resource);
          if (cached != null) {
              Log.v("ASSET", "Texture: %s loaded from cache", cached.getFileName());
              gvrContext.runOnGlThread(new Runnable() {
  
                  @Override
                  public void run() {
                      callback.loaded(cached, resource);
                  }
              });
          }
          else
          {
              CompressedTextureCallback actualCallback = textureCache == null ? callback
                      : ResourceCache.wrapCallback(textureCache, callback);
              AsyncCompressedTexture.loadTexture(gvrContext,
                                             CancelableCallbackWrapper.wrap(GVRCompressedImage.class, actualCallback),
                                             resource, GVRContext.LOWEST_PRIORITY);
          }
      }