package com.nilhcem.bblfr.ui.baggers.list.filter;
import android.os.Parcel;
import android.os.Parcelable;
import com.nilhcem.bblfr.model.baggers.Tag;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
public class TagsListEntry implements Parcelable {
public final long id;
public final String name;
private boolean mActivated;
public TagsListEntry(Tag tag) {
id = tag.id;
name = String.format(Locale.US, "#%s", tag.name);
}
public boolean isActivated() {
return mActivated;
}
public void toggleActivatedState() {
mActivated = !mActivated;
}
public void resetActivatedState() {
mActivated = false;
}
public static List<String> getSelectedTagsIds(List<TagsListEntry> items) {
List<String> selectedTagsIds = new ArrayList<>();
for (TagsListEntry item : items) {
if (item.isActivated()) {
selectedTagsIds.add(Long.toString(item.id));
}
}
return selectedTagsIds;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeLong(id);
dest.writeString(name);
dest.writeByte(mActivated ? (byte) 1 : (byte) 0);
}
private TagsListEntry(Parcel in) {
id = in.readLong();
name = in.readString();
mActivated = in.readByte() != 0;
}
public static final Parcelable.Creator<TagsListEntry> CREATOR = new Parcelable.Creator<TagsListEntry>() {
public TagsListEntry createFromParcel(Parcel source) {
return new TagsListEntry(source);
}
public TagsListEntry[] newArray(int size) {
return new TagsListEntry[size];
}
};
}