package org.wordpress.android.ui.suggestion.util; import android.content.Context; import org.wordpress.android.datasets.SuggestionTable; import org.wordpress.android.fluxc.model.SiteModel; import org.wordpress.android.models.Suggestion; import org.wordpress.android.models.Tag; import org.wordpress.android.ui.suggestion.adapters.SuggestionAdapter; import org.wordpress.android.ui.suggestion.adapters.TagSuggestionAdapter; import org.wordpress.android.util.SiteUtils; import java.util.List; public class SuggestionUtils { public static SuggestionAdapter setupSuggestions(SiteModel site, Context context, SuggestionServiceConnectionManager serviceConnectionManager) { return SuggestionUtils.setupSuggestions(site.getSiteId(), context, serviceConnectionManager, SiteUtils.isAccessedViaWPComRest(site)); } public static SuggestionAdapter setupSuggestions(final long siteId, Context context, SuggestionServiceConnectionManager serviceConnectionManager, boolean isDotcomFlag) { if (!isDotcomFlag) { return null; } SuggestionAdapter suggestionAdapter = new SuggestionAdapter(context); List<Suggestion> suggestions = SuggestionTable.getSuggestionsForSite(siteId); // if the suggestions are not stored yet, we want to trigger an update for it if (suggestions.isEmpty()) { serviceConnectionManager.bindToService(); } suggestionAdapter.setSuggestionList(suggestions); return suggestionAdapter; } public static TagSuggestionAdapter setupTagSuggestions(SiteModel site, Context context, SuggestionServiceConnectionManager serviceConnectionManager) { return SuggestionUtils.setupTagSuggestions(site.getSiteId(), context, serviceConnectionManager, SiteUtils.isAccessedViaWPComRest(site)); } public static TagSuggestionAdapter setupTagSuggestions(final long siteId, Context context, SuggestionServiceConnectionManager serviceConnectionManager, boolean isDotcomFlag) { if (!isDotcomFlag) { return null; } TagSuggestionAdapter tagSuggestionAdapter = new TagSuggestionAdapter(context); List<Tag> tags = SuggestionTable.getTagsForSite(siteId); // if the tags are not stored yet, we want to trigger an update for it if (tags.isEmpty()) { serviceConnectionManager.bindToService(); } tagSuggestionAdapter.setTagList(tags); return tagSuggestionAdapter; } }