package com.aptoide.amethyst.adapter;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
import com.aptoide.dataprovider.webservices.models.v7.GetStoreTabs.Tab;
import java.util.List;
import com.aptoide.amethyst.fragments.store.CategoryFragment;
import com.aptoide.amethyst.fragments.store.HomeStoreFragment;
import com.aptoide.amethyst.fragments.store.LatestCommentsFragment;
import com.aptoide.amethyst.fragments.store.LatestReviewsFragment;
import static com.aptoide.dataprovider.webservices.models.v7.GetStoreWidgets.Datalist.WidgetList.Action.Event.GET_APK_COMMENTS_TAB;
import static com.aptoide.dataprovider.webservices.models.v7.GetStoreWidgets.Datalist.WidgetList.Action.Event.GET_REVIEWS_TAB;
import static com.aptoide.dataprovider.webservices.models.v7.GetStoreWidgets.Datalist.WidgetList.Action.Event.GET_STORE_TAB;
import static com.aptoide.dataprovider.webservices.models.v7.GetStoreWidgets.Datalist.WidgetList.Action.Event.GET_STORE_WIDGETS_TAB;
/**
* Created by rmateus on 23/06/15.
*/
public class StorePagerAdapter extends FragmentStatePagerAdapter {
private final List<Tab> tabs;
private Bundle args;
public StorePagerAdapter(FragmentManager fm, Bundle args, List<Tab> tabs) {
super(fm);
this.args = args;
this.tabs = tabs;
}
@Override
public Fragment getItem(int position) {
Tab tab = tabs.get(position);
switch (tab.event.name) {
case GET_STORE_TAB:
return HomeStoreFragment.newInstance(args);
case GET_STORE_WIDGETS_TAB:
return CategoryFragment.newInstance(args, tab.event.action);
case GET_APK_COMMENTS_TAB:
return LatestCommentsFragment.newInstance(args);
case GET_REVIEWS_TAB:
return LatestReviewsFragment.newInstance(args);
}
return null;
}
@Override
public int getCount() {
return tabs.size();
}
@Override
public CharSequence getPageTitle(int position) {
Tab tab = tabs.get(position);
return tab.label;
}
}