mobile/android/thirdparty/com/squareup/picasso/Action.java

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

michael@0 1 /*
michael@0 2 * Copyright (C) 2013 Square, Inc.
michael@0 3 *
michael@0 4 * Licensed under the Apache License, Version 2.0 (the "License");
michael@0 5 * you may not use this file except in compliance with the License.
michael@0 6 * You may obtain a copy of the License at
michael@0 7 *
michael@0 8 * http://www.apache.org/licenses/LICENSE-2.0
michael@0 9 *
michael@0 10 * Unless required by applicable law or agreed to in writing, software
michael@0 11 * distributed under the License is distributed on an "AS IS" BASIS,
michael@0 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
michael@0 13 * See the License for the specific language governing permissions and
michael@0 14 * limitations under the License.
michael@0 15 */
michael@0 16 package com.squareup.picasso;
michael@0 17
michael@0 18 import android.graphics.Bitmap;
michael@0 19 import android.graphics.drawable.Drawable;
michael@0 20 import java.lang.ref.ReferenceQueue;
michael@0 21 import java.lang.ref.WeakReference;
michael@0 22
michael@0 23 abstract class Action<T> {
michael@0 24 static class RequestWeakReference<T> extends WeakReference<T> {
michael@0 25 final Action action;
michael@0 26
michael@0 27 public RequestWeakReference(Action action, T referent, ReferenceQueue<? super T> q) {
michael@0 28 super(referent, q);
michael@0 29 this.action = action;
michael@0 30 }
michael@0 31 }
michael@0 32
michael@0 33 final Picasso picasso;
michael@0 34 final Request data;
michael@0 35 final WeakReference<T> target;
michael@0 36 final boolean skipCache;
michael@0 37 final boolean noFade;
michael@0 38 final int errorResId;
michael@0 39 final Drawable errorDrawable;
michael@0 40 final String key;
michael@0 41
michael@0 42 boolean cancelled;
michael@0 43
michael@0 44 Action(Picasso picasso, T target, Request data, boolean skipCache, boolean noFade,
michael@0 45 int errorResId, Drawable errorDrawable, String key) {
michael@0 46 this.picasso = picasso;
michael@0 47 this.data = data;
michael@0 48 this.target = new RequestWeakReference<T>(this, target, picasso.referenceQueue);
michael@0 49 this.skipCache = skipCache;
michael@0 50 this.noFade = noFade;
michael@0 51 this.errorResId = errorResId;
michael@0 52 this.errorDrawable = errorDrawable;
michael@0 53 this.key = key;
michael@0 54 }
michael@0 55
michael@0 56 abstract void complete(Bitmap result, Picasso.LoadedFrom from);
michael@0 57
michael@0 58 abstract void error();
michael@0 59
michael@0 60 void cancel() {
michael@0 61 cancelled = true;
michael@0 62 }
michael@0 63
michael@0 64 Request getData() {
michael@0 65 return data;
michael@0 66 }
michael@0 67
michael@0 68 T getTarget() {
michael@0 69 return target.get();
michael@0 70 }
michael@0 71
michael@0 72 String getKey() {
michael@0 73 return key;
michael@0 74 }
michael@0 75
michael@0 76 boolean isCancelled() {
michael@0 77 return cancelled;
michael@0 78 }
michael@0 79
michael@0 80 Picasso getPicasso() {
michael@0 81 return picasso;
michael@0 82 }
michael@0 83 }

mercurial