Java 类com.bumptech.glide.Priority 实例源码

项目:ITSM    文件:OkHttpStreamFetcher.java   
@Override
public InputStream loadData(Priority priority) throws Exception {
    Request.Builder requestBuilder = new Request.Builder().url(url.toStringUrl());

    for (Map.Entry<String, String> headerEntry : url.getHeaders().entrySet()) {
        String key = headerEntry.getKey();
        requestBuilder.addHeader(key, headerEntry.getValue());
    }
    Request request = requestBuilder.build();

    Response response;
    call = client.newCall(request);
    response = call.execute();
    responseBody = response.body();
    if (!response.isSuccessful()) {
        throw new IOException("Request failed with code: " + response.code());
    }

    long contentLength = responseBody.contentLength();
    stream = ContentLengthInputStream.obtain(responseBody.byteStream(), contentLength);
    return stream;
}
项目:decoy    文件:NetworkDisablingLoader.java   
@Override
public DataFetcher<InputStream> getResourceFetcher(final String model, int width, int height) {
    return new DataFetcher<InputStream>() {
        @Override
        public InputStream loadData(Priority priority) throws Exception {
            throw new IOException("Forced Glide network failure");
        }

        @Override
        public void cleanup() {
        }

        @Override
        public String getId() {
            return model;
        }

        @Override
        public void cancel() {
        }
    };
}
项目:FireBaseTest    文件:FirebaseImageLoader.java   
@Override
public void loadData(Priority priority,
                     final DataCallback<? super InputStream> callback) {
    mStreamTask = mRef.getStream();
    mStreamTask
            .addOnSuccessListener(new OnSuccessListener<StreamDownloadTask.TaskSnapshot>() {
                @Override
                public void onSuccess(StreamDownloadTask.TaskSnapshot snapshot) {
                    mInputStream = snapshot.getStream();
                    callback.onDataReady(mInputStream);
                }
            })
            .addOnFailureListener(new OnFailureListener() {
                @Override
                public void onFailure(@NonNull Exception e) {
                    callback.onLoadFailed(e);
                }
            });
}
项目:Melophile    文件:AlbumAdapter.java   
@Override
public View instantiateItem(ViewGroup container, int position) {
    View view=inflater.inflate(R.layout.adapter_album,container,false);
    ImageView image= ButterKnife.findById(view,R.id.image);

    Glide.with(container.getContext())
            .load(albums.get(position).getArtworkUrl())
            .asBitmap()
            .priority(Priority.IMMEDIATE)
            .diskCacheStrategy(DiskCacheStrategy.RESULT)
            .into(new ImageViewTarget<Bitmap>(image) {
                @Override
                protected void setResource(Bitmap resource) {
                    image.setImageBitmap(resource);
                    if (position == current && !isLoaded) {
                        isLoaded = true;
                        if (callback != null) {
                            callback.onTransitionImageLoaded(image,resource);
                        }
                    }
                }
            });
    container.addView(view);
    return view;
}
项目:Hotspot-master-devp    文件:OkHttpStreamFetcher.java   
@Override
public InputStream loadData(Priority priority) throws Exception {
    Request.Builder requestBuilder = new Request.Builder()
            .url(url.toStringUrl());

    for (Map.Entry<String, String> headerEntry : url.getHeaders().entrySet()) {
        String key = headerEntry.getKey();
        requestBuilder.addHeader(key, headerEntry.getValue());
    }

    Request request = requestBuilder.build();

    Response response = client.newCall(request).execute();
    responseBody = response.body();
    if (!response.isSuccessful()) {
        throw new IOException("Request failed with code: " + response.code());
    }

    long contentLength = responseBody.contentLength();
    stream = ContentLengthInputStream.obtain(responseBody.byteStream(), contentLength);
    return stream;
}
项目:GitHub    文件:MediaStoreFileLoader.java   
@Override
public void loadData(Priority priority, DataCallback<? super File> callback) {
  Cursor cursor = context.getContentResolver().query(uri, PROJECTION, null /*selection*/,
      null /*selectionArgs*/, null /*sortOrder*/);

  String filePath = null;
  if (cursor != null) {
    try {
      if (cursor.moveToFirst()) {
        filePath = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.MediaColumns.DATA));
      }
    } finally {
      cursor.close();
    }
  }

  if (TextUtils.isEmpty(filePath)) {
    callback.onLoadFailed(new FileNotFoundException("Failed to find file path for: " + uri));
  } else {
    callback.onDataReady(new File(filePath));
  }
}
项目:GitHub    文件:HttpUrlFetcher.java   
@Override
public void loadData(Priority priority, DataCallback<? super InputStream> callback) {
  long startTime = LogTime.getLogTime();
  final InputStream result;
  try {
    result = loadDataWithRedirects(glideUrl.toURL(), 0 /*redirects*/, null /*lastUrl*/,
        glideUrl.getHeaders());
  } catch (IOException e) {
    if (Log.isLoggable(TAG, Log.DEBUG)) {
      Log.d(TAG, "Failed to load data for url", e);
    }
    callback.onLoadFailed(e);
    return;
  }

  if (Log.isLoggable(TAG, Log.VERBOSE)) {
    Log.v(TAG, "Finished http url fetcher fetch in " + LogTime.getElapsedMillis(startTime)
        + " ms and loaded " + result);
  }
  callback.onDataReady(result);
}
项目:GitHub    文件:SingleRequestTest.java   
@Test
public void testCanReRunCancelledRequests() {
  doAnswer(new CallSizeReady(100, 100)).when(harness.target)
      .getSize(any(SizeReadyCallback.class));

  when(harness.engine
      .load(eq(harness.glideContext), eq(harness.model), eq(harness.signature), eq(100), eq(100),
          eq(Object.class), eq(List.class), any(Priority.class), any(DiskCacheStrategy.class),
          eq(harness.transformations), anyBoolean(), any(Options.class),
          anyBoolean(), anyBoolean(), anyBoolean(), any(ResourceCallback.class)))
      .thenAnswer(new CallResourceCallback(harness.resource));
  SingleRequest<List> request = harness.getRequest();

  request.begin();
  request.cancel();
  request.begin();

  verify(harness.target, times(2)).onResourceReady(eq(harness.result), anyTransition());
}
项目:GitHub    文件:HttpUrlFetcherServerTest.java   
@Test
public void testHandlesUpToFiveRedirects() throws Exception {
  int numRedirects = 4;
  String expected = "redirectedData";
  String redirectBase = "/redirect";
  for (int i = 0; i < numRedirects; i++) {
    mockWebServer.enqueue(new MockResponse().setResponseCode(301)
        .setHeader("Location", mockWebServer.url(redirectBase + i).toString()));
  }
  mockWebServer.enqueue(new MockResponse().setResponseCode(200).setBody(expected));

  getFetcher().loadData(Priority.NORMAL, callback);
  verify(callback).onDataReady(streamCaptor.capture());
  TestUtil.assertStreamOf(expected, streamCaptor.getValue());

  assertThat(mockWebServer.takeRequest().getPath()).contains(DEFAULT_PATH);
  for (int i = 0; i < numRedirects; i++) {
    assertThat(mockWebServer.takeRequest().getPath()).contains(redirectBase + i);
  }
}
项目:Ency    文件:LikeAdapter.java   
@Override
protected void convert(BaseViewHolder helper, LikeBean item) {
    helper.setText(R.id.txt_like_title, item.getTitle());
    if (item.getType() == Constants.TYPE_WEIXIN) {
        helper.setText(R.id.txt_like_type, R.string.weixin);
    }
    else if(item.getType() == Constants.TYPE_GANK){
        helper.setText(R.id.txt_like_type, R.string.gank);
    }
    helper.setText(R.id.txt_like_date, DateUtil.LongToString(item.getTime()));
    GlideApp.with(mContext)
            .load(item.getImageUrl())
            .centerCrop()
            .placeholder(R.drawable.ic_ali)
            .priority(Priority.LOW)
            .diskCacheStrategy(DiskCacheStrategy.AUTOMATIC)
            .into((ImageView) helper.getView(R.id.img_like));
}
项目:SuperNote    文件:EditNotePresenter.java   
private void replaceImage(final String imageName) {
    BitmapFactory.Options options = new BitmapFactory.Options();
    options.inJustDecodeBounds = true;

    File imageFile = new File(mView.getActivity().getExternalFilesDir(mNoteId).getPath() + "/" + imageName);

    BitmapFactory.decodeFile(imageFile.getPath(), options);

    int imageRequestWidth = getRequestImeWidth();
    int imageRequestHeight = setNeedHeight(options);


    Glide.with(mView.getActivity())
            .load(imageFile)
            .asBitmap()
            .override(imageRequestWidth, imageRequestHeight)
            .fitCenter()
            .priority(Priority.HIGH)
            .into(new SimpleTarget<Bitmap>() {
                @Override
                public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {
                    mView.replaceImage(imageName, resource);
                }
            });
}
项目:bikedeboa-android    文件:BindingAdapters.java   
@BindingAdapter({"imageAddress"})
public static void loadImage(final ImageView imageView, final String imageAddress) {

    if (imageAddress != null && imageAddress.startsWith("https://s3.amazonaws.com/bikedeboa/")) {

        Context context = imageView.getContext();
        // Hopefully the thumbnail is already disk cached and no requests are made
        DrawableRequestBuilder<String> thumbnailRequest = Glide
                .with(context)
                .load(imageAddress.replace("images/", "images/thumbs/"))
                .diskCacheStrategy(DiskCacheStrategy.ALL)
                .override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)
                .transform(new BlurTransformation(context));

        Glide.with(context)
                .load(imageAddress)
                .thumbnail(thumbnailRequest)
                .crossFade()
                .diskCacheStrategy(DiskCacheStrategy.SOURCE)
                .priority(Priority.HIGH)
                .into(imageView);
    }
}
项目:GitHub    文件:HttpUrlFetcherServerTest.java   
@Test
public void testHandlesUpToFiveRedirects() throws Exception {
  int numRedirects = 4;
  String expected = "redirectedData";
  String redirectBase = "/redirect";
  for (int i = 0; i < numRedirects; i++) {
    mockWebServer.enqueue(new MockResponse().setResponseCode(301)
        .setHeader("Location", mockWebServer.url(redirectBase + i).toString()));
  }
  mockWebServer.enqueue(new MockResponse().setResponseCode(200).setBody(expected));

  getFetcher().loadData(Priority.NORMAL, callback);
  verify(callback).onDataReady(streamCaptor.capture());
  TestUtil.assertStreamOf(expected, streamCaptor.getValue());

  assertThat(mockWebServer.takeRequest().getPath()).contains(DEFAULT_PATH);
  for (int i = 0; i < numRedirects; i++) {
    assertThat(mockWebServer.takeRequest().getPath()).contains(redirectBase + i);
  }
}
项目:KomaMusic    文件:ArtworkDataFetcher.java   
@Override
public void loadData(Priority priority, DataCallback<? super InputStream> callback) {
    try {
        mInputStream = openThumbInputStream();
    } catch (FileNotFoundException e) {
        LogUtils.d(TAG, "Failed to find thumbnail file," + e.toString());

        callback.onLoadFailed(e);

        return;
    }

    callback.onDataReady(mInputStream);
}
项目:GitHub    文件:DataUrlLoader.java   
@Override
public void loadData(Priority priority, DataCallback<? super Data> callback) {
  try {
    data = reader.decode(dataUri);
    callback.onDataReady(data);
  } catch (IllegalArgumentException e) {
    callback.onLoadFailed(e);
  }
}
项目:GitHub    文件:VolleyStreamFetcher.java   
private static Request.Priority glideToVolleyPriority(Priority priority) {
  switch (priority) {
    case LOW:
      return Request.Priority.LOW;
    case HIGH:
      return Request.Priority.HIGH;
    case IMMEDIATE:
      return Request.Priority.IMMEDIATE;
    default:
      return Request.Priority.NORMAL;
  }
}
项目:GitHub    文件:DataUrlLoaderTest.java   
@Test
public void testDecode() throws IOException {
  byte[] expected = Base64
      .decode(VALID_PNG.substring(VALID_PNG.indexOf(',') + 1), Base64.DEFAULT);
  CallBack callback = new CallBack();
  fetcher.loadData(Priority.HIGH, callback);
  byte[] result = new byte[((ByteArrayInputStream) callback.data).available()];
  assertEquals(result.length, ((ByteArrayInputStream) callback.data).read(result));
  assertTrue(Arrays.equals(result, expected));
  assertNull(callback.exception);
}
项目:GitHub    文件:VolleyStreamFetcher.java   
public GlideRequest(String url, DataCallback<? super InputStream> callback, Priority priority,
    Map<String, String> headers) {
  super(Method.GET, url, null);
  this.callback = callback;
  this.priority = priority;
  this.headers = headers;
}
项目:GitHub    文件:GlideRequest.java   
/**
 * @see GlideOptions#priority(Priority)
 */
@CheckResult
public GlideRequest<TranscodeType> priority(@NonNull Priority arg0) {
  if (getMutableOptions() instanceof GlideOptions) {
    this.requestOptions = ((GlideOptions) getMutableOptions()).priority(arg0);
  } else {
    this.requestOptions = new GlideOptions().apply(this.requestOptions).priority(arg0);
  }
  return this;
}
项目:GitHub    文件:VolleyStreamFetcherServerTest.java   
@Test
public void testReturnsInputStreamOnStatusOk() throws Exception {
  String expected = "fakedata";
  mockWebServer.enqueue(new MockResponse().setBody(expected).setResponseCode(200));
  DataFetcher<InputStream> fetcher = getFetcher();
  fetcher.loadData(Priority.HIGH, callback);
  waitForResponseLatch.await();
  verify(callback).onDataReady(streamCaptor.capture());
  assertStreamOf(expected, streamCaptor.getValue());
}
项目:GitHub    文件:GlideRequest.java   
/**
 * @see GlideOptions#priority(Priority)
 */
@CheckResult
public GlideRequest<TranscodeType> priority(@NonNull Priority arg0) {
  if (getMutableOptions() instanceof GlideOptions) {
    this.requestOptions = ((GlideOptions) getMutableOptions()).priority(arg0);
  } else {
    this.requestOptions = new GlideOptions().apply(this.requestOptions).priority(arg0);
  }
  return this;
}
项目:GitHub    文件:SingleRequestTest.java   
@Test
public void testIgnoresOnSizeReadyIfNotWaitingForSize() {
  SingleRequest<List> request = builder.build();
  request.begin();
  request.onSizeReady(100, 100);
  request.onSizeReady(100, 100);

  verify(builder.engine, times(1))
      .load(
          eq(builder.glideContext),
          eq(builder.model),
          eq(builder.signature),
          eq(100),
          eq(100),
          eq(Object.class),
          eq(List.class),
          any(Priority.class),
          any(DiskCacheStrategy.class),
          eq(builder.transformations),
          anyBoolean(),
          anyBoolean(),
          any(Options.class),
          anyBoolean(),
          anyBoolean(),
          /*useAnimationPool=*/ anyBoolean(),
          anyBoolean(),
          any(ResourceCallback.class));
}
项目:GitHub    文件:VolleyStreamFetcherServerTest.java   
@Test
public void testCallsLoadFailedIfStatusCodeIsNegativeOne() throws Exception {
  mockWebServer.enqueue(new MockResponse().setResponseCode(-1));
  getFetcher().loadData(Priority.LOW, callback);
  waitForResponseLatch.await();
  verify(callback).onLoadFailed(isA(VolleyError.class));
}
项目:GitHub    文件:VolleyStreamFetcherServerTest.java   
@Test
public void testCallsLoadFailedAfterTooManyRedirects() throws Exception {
  for (int i = 0; i < 20; i++) {
    mockWebServer.enqueue(new MockResponse().setResponseCode(301)
        .setHeader("Location", mockWebServer.url("/redirect" + i).toString()));
  }
  getFetcher().loadData(Priority.NORMAL, callback);
  waitForResponseLatch.await();
  verify(callback).onLoadFailed(isA(VolleyError.class));
}
项目:GitHub    文件:HttpUrlFetcherTest.java   
@Test
public void testCancelDoesNotDisconnectIfAlreadyConnected()
    throws IOException {
  fetcher.loadData(Priority.HIGH, callback);
  fetcher.cancel();

  verify(urlConnection, never()).disconnect();
}
项目:Matisse    文件:GlideEngine.java   
@Override
public void loadImage(Context context, int resizeX, int resizeY, ImageView imageView, Uri uri) {
    Glide.with(context)
            .load(uri)
            .override(resizeX, resizeY)
            .priority(Priority.HIGH)
            .into(imageView);
}
项目:UIWidget    文件:GlideManager.java   
private static RequestOptions getRequestOptions() {
    RequestOptions requestOptions = new RequestOptions()
            .centerCrop() // 填充方式
            .priority(Priority.HIGH) //优先级
            .diskCacheStrategy(DiskCacheStrategy.ALL); //缓存策略
    return requestOptions;
}
项目:RetroMusicPlayer    文件:ArtistGlideRequest.java   
public DrawableRequestBuilder<GlideDrawable> build() {
    //noinspection unchecked
    return createBaseRequest(requestManager, artist, noCustomImage, forceDownload)
            .diskCacheStrategy(DEFAULT_DISK_CACHE_STRATEGY)
            .error(DEFAULT_ERROR_IMAGE)
            .animate(DEFAULT_ANIMATION)
            .priority(Priority.LOW)
            .override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)
            .signature(createSignature(artist));
}
项目:GitHub    文件:SingleRequest.java   
private void init(
    GlideContext glideContext,
    Object model,
    Class<R> transcodeClass,
    RequestOptions requestOptions,
    int overrideWidth,
    int overrideHeight,
    Priority priority,
    Target<R> target,
    RequestListener<R> requestListener,
    RequestCoordinator requestCoordinator,
    Engine engine,
    TransitionFactory<? super R> animationFactory) {
  this.glideContext = glideContext;
  this.model = model;
  this.transcodeClass = transcodeClass;
  this.requestOptions = requestOptions;
  this.overrideWidth = overrideWidth;
  this.overrideHeight = overrideHeight;
  this.priority = priority;
  this.target = target;
  this.requestListener = requestListener;
  this.requestCoordinator = requestCoordinator;
  this.engine = engine;
  this.animationFactory = animationFactory;
  status = Status.PENDING;
}
项目:GitHub    文件:VolleyStreamFetcherServerTest.java   
@Test
public void testCallsLoadFailedIfStatusCodeIs400() throws Exception {
  mockWebServer.enqueue(new MockResponse().setResponseCode(400).setBody("error"));
  getFetcher().loadData(Priority.LOW, callback);
  waitForResponseLatch.await();
  verify(callback).onLoadFailed(isA(VolleyError.class));
}
项目:Swap    文件:ImageConfigGlideLoader.java   
@Override
public void displayImage(Context context, String path, ImageView imageView) {
    Glide.with(context)
            .load(path)
            .placeholder(R.drawable.global_img_default)
            .priority(Priority.HIGH)
            .into(imageView);
}
项目:GitHub    文件:DecodeHelper.java   
@SuppressWarnings("unchecked")
<R> DecodeHelper<R> init(
    GlideContext glideContext,
    Object model,
    Key signature,
    int width,
    int height,
    DiskCacheStrategy diskCacheStrategy,
    Class<?> resourceClass,
    Class<R> transcodeClass,
    Priority priority,
    Options options,
    Map<Class<?>, Transformation<?>> transformations,
    boolean isTransformationRequired,
    DecodeJob.DiskCacheProvider diskCacheProvider) {
  this.glideContext = glideContext;
  this.model = model;
  this.signature = signature;
  this.width = width;
  this.height = height;
  this.diskCacheStrategy = diskCacheStrategy;
  this.resourceClass = resourceClass;
  this.diskCacheProvider = diskCacheProvider;
  this.transcodeClass = (Class<Transcode>) transcodeClass;
  this.priority = priority;
  this.options = options;
  this.transformations = transformations;
  this.isTransformationRequired = isTransformationRequired;

  return (DecodeHelper<R>) this;
}
项目:GitHub    文件:GlideRequest.java   
/**
 * @see GlideOptions#priority(Priority)
 */
@CheckResult
public GlideRequest<TranscodeType> priority(@NonNull Priority arg0) {
  if (getMutableOptions() instanceof GlideOptions) {
    this.requestOptions = ((GlideOptions) getMutableOptions()).priority(arg0);
  } else {
    this.requestOptions = new GlideOptions().apply(this.requestOptions).priority(arg0);
  }
  return this;
}
项目:GitHub    文件:WaitModelLoader.java   
@Override
public void loadData(Priority priority, DataCallback<? super Data> callback) {
  try {
    toWaitOn.await(ConcurrencyHelper.TIMEOUT_MS, ConcurrencyHelper.TIMEOUT_UNIT);
  } catch (InterruptedException e) {
    throw new RuntimeException(e);
  }
  wrapped.loadData(priority, callback);
}
项目:Nird2    文件:BitmapUtil.java   
private static <T> InputStream getInputStreamForModel(Context context,
        T model)
        throws BitmapDecodingException {
    try {
        return Glide.buildStreamModelLoader(model, context)
                .getResourceFetcher(model, -1, -1)
                .loadData(Priority.NORMAL);
    } catch (Exception e) {
        throw new BitmapDecodingException(e);
    }
}
项目:GitHub    文件:DataUrlLoader.java   
@Override
public void loadData(Priority priority, DataCallback<? super Data> callback) {
  try {
    data = reader.decode(dataUri);
    callback.onDataReady(data);
  } catch (IllegalArgumentException e) {
    callback.onLoadFailed(e);
  }
}
项目:GitHub    文件:HttpUrlFetcherTest.java   
@Test
public void testDisconnectsUrlOnCleanup() throws IOException {
  fetcher.loadData(Priority.HIGH, callback);
  fetcher.cleanup();

  verify(urlConnection).disconnect();
}
项目:Orin    文件:SearchAdapter.java   
@SuppressWarnings("ConstantConditions")
@Override
public void onBindViewHolder(@NonNull final ViewHolder holder, int position) {
    switch (getItemViewType(position)) {
        case ALBUM:
            final Album album = (Album) dataSet.get(position);
            holder.title.setText(album.getTitle());
            holder.text.setText(album.getArtistName());
            SongGlideRequest.Builder.from(Glide.with(activity), album.safeGetFirstSong())
                    .checkIgnoreMediaStore(activity).build()
                    .into(holder.image);
            break;
        case ARTIST:
            final Artist artist = (Artist) dataSet.get(position);
            holder.title.setText(artist.getName());
            holder.text.setText(MusicUtil.getArtistInfoString(activity, artist));
            Glide.with(activity)
                    .load(new ArtistImage(artist.getName(), false))
                    .diskCacheStrategy(DiskCacheStrategy.SOURCE)
                    .placeholder(R.drawable.default_artist_image)
                    .animate(android.R.anim.fade_in)
                    .priority(Priority.LOW)
                    .signature(ArtistSignatureUtil.getInstance(activity).getArtistSignature(artist.getName()))
                    .override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)
                    .into(holder.image);
            break;
        case SONG:
            final Song song = (Song) dataSet.get(position);
            holder.title.setText(song.title);
            holder.text.setText(song.albumName);
            break;
        default:
            holder.title.setText(dataSet.get(position).toString());
            break;
    }
}
项目:GitHub    文件:HttpUrlFetcherServerTest.java   
@Test
public void testFailsIfRedirectLocationIsPresentAndEmpty() throws Exception {
  mockWebServer.enqueue(new MockResponse().setResponseCode(301).setHeader("Location", ""));

  getFetcher().loadData(Priority.NORMAL, callback);

  verify(callback).onLoadFailed(isA(IOException.class));
}
项目:Matisse    文件:GlideEngine.java   
@Override
public void loadGifImage(Context context, int resizeX, int resizeY, ImageView imageView, Uri uri) {
    Glide.with(context)
            .load(uri)
            .asGif()
            .override(resizeX, resizeY)
            .priority(Priority.HIGH)
            .into(imageView);
}