mirror of https://github.com/tasks/tasks
Remove SyncAction
parent
584fdefe47
commit
1b6c7eaa69
@ -1,112 +0,0 @@
|
||||
/**
|
||||
* Copyright (c) 2012 Todoroo Inc
|
||||
*
|
||||
* See the file "LICENSE" for the full license governing this code.
|
||||
*/
|
||||
package com.todoroo.astrid.api;
|
||||
|
||||
import android.app.PendingIntent;
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
|
||||
/**
|
||||
* Represents an intent that can be called to perform synchronization
|
||||
*
|
||||
* @author Tim Su <tim@todoroo.com>
|
||||
*
|
||||
*/
|
||||
public class SyncAction implements Parcelable {
|
||||
|
||||
/**
|
||||
* Label
|
||||
*/
|
||||
public String label = null;
|
||||
|
||||
/**
|
||||
* Intent to call when invoking this operation
|
||||
*/
|
||||
public PendingIntent intent = null;
|
||||
|
||||
/**
|
||||
* Create an EditOperation object
|
||||
*
|
||||
* @param label
|
||||
* label to display
|
||||
* @param intent
|
||||
* intent to invoke
|
||||
*/
|
||||
public SyncAction(String label, PendingIntent intent) {
|
||||
super();
|
||||
this.label = label;
|
||||
this.intent = intent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the label of this action
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return label;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return label.hashCode() ^ intent.getTargetPackage().hashCode();
|
||||
}
|
||||
|
||||
/**
|
||||
* We consider two sync actions equal if target package is identical
|
||||
* and the labels are the same. This prevents duplicate pendingIntents
|
||||
* from creating multiple SyncAction objects.
|
||||
*/
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if(!(o instanceof SyncAction)) {
|
||||
return false;
|
||||
}
|
||||
SyncAction other = (SyncAction) o;
|
||||
return label.equals(other.label) && intent.getTargetPackage().equals(other.intent.getTargetPackage());
|
||||
}
|
||||
|
||||
// --- parcelable helpers
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
@Override
|
||||
public int describeContents() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
@Override
|
||||
public void writeToParcel(Parcel dest, int flags) {
|
||||
dest.writeString(label);
|
||||
dest.writeParcelable(intent, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Parcelable creator
|
||||
*/
|
||||
public static final Parcelable.Creator<SyncAction> CREATOR = new Parcelable.Creator<SyncAction>() {
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
@Override
|
||||
public SyncAction createFromParcel(Parcel source) {
|
||||
return new SyncAction(source.readString(), (PendingIntent)source.readParcelable(
|
||||
PendingIntent.class.getClassLoader()));
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
@Override
|
||||
public SyncAction[] newArray(int size) {
|
||||
return new SyncAction[size];
|
||||
}
|
||||
};
|
||||
|
||||
}
|
Loading…
Reference in New Issue