Documentation ¶
Index ¶
- Constants
- Variables
- func AssertCategoriesEqual(t *testing.T, got, want []SubscribedFeedsByCategory)
- func AssertPageEquals(t *testing.T, got, want FeedPage)
- func AssertSubscribedFeedEntriesEqual(t *testing.T, got []SubscribedFeedEntry, want []SubscribedFeedEntry)
- func AssertSubscribedFeedsEqual(t *testing.T, categoryIndex int, got []SubscribedFeed, want []SubscribedFeed)
- func AssertSubscriptionEntriesEqual(t *testing.T, got []SubscribedFeedEntry, want []SubscribedFeedEntry)
- type FeedPage
- type Repository
- type Service
- func (s *Service) FeedsByCategoryAndPage(userUUID string, category feed.Category, number uint) (FeedPage, error)
- func (s *Service) FeedsByCategoryAndQueryAndPage(userUUID string, category feed.Category, query string, number uint) (FeedPage, error)
- func (s *Service) FeedsByPage(userUUID string, number uint) (FeedPage, error)
- func (s *Service) FeedsByQueryAndPage(userUUID string, query string, number uint) (FeedPage, error)
- func (s *Service) FeedsBySubscriptionAndPage(userUUID string, subscription feed.Subscription, number uint) (FeedPage, error)
- func (s *Service) FeedsBySubscriptionAndQueryAndPage(userUUID string, subscription feed.Subscription, query string, number uint) (FeedPage, error)
- func (s *Service) SubscriptionByUUID(userUUID string, subscriptionUUID string) (Subscription, error)
- func (s *Service) SubscriptionsByCategory(userUUID string) ([]SubscriptionsByCategory, error)
- type SubscribedFeed
- type SubscribedFeedEntry
- type SubscribedFeedsByCategory
- type Subscription
- type SubscriptionsByCategory
Constants ¶
View Source
const (
PageHeaderAll string = "All"
)
Variables ¶
View Source
var (
ErrPageNumberOutOfBounds error = errors.New("querying: invalid page index (out of bounds)")
)
Functions ¶
func AssertCategoriesEqual ¶ added in v0.4.0
func AssertCategoriesEqual(t *testing.T, got, want []SubscribedFeedsByCategory)
func AssertPageEquals ¶ added in v0.4.0
func AssertSubscribedFeedEntriesEqual ¶ added in v0.4.0
func AssertSubscribedFeedEntriesEqual(t *testing.T, got []SubscribedFeedEntry, want []SubscribedFeedEntry)
func AssertSubscribedFeedsEqual ¶ added in v0.4.0
func AssertSubscribedFeedsEqual(t *testing.T, categoryIndex int, got []SubscribedFeed, want []SubscribedFeed)
func AssertSubscriptionEntriesEqual ¶ added in v0.4.0
func AssertSubscriptionEntriesEqual(t *testing.T, got []SubscribedFeedEntry, want []SubscribedFeedEntry)
Types ¶
type FeedPage ¶
type FeedPage struct { PageNumber uint PreviousPageNumber uint NextPageNumber uint TotalPages uint Offset uint SearchTerms string SearchResultCount uint PageTitle string Description string Unread uint Categories []SubscribedFeedsByCategory Entries []SubscribedFeedEntry }
A FeedPage holds a set of paginated Feeds.
func NewFeedPage ¶
func NewFeedPage(number uint, totalPages uint, pageTitle string, description string, categories []SubscribedFeedsByCategory, entries []SubscribedFeedEntry) FeedPage
NewFeedPage initializes and returns a new FeedPage.
func NewFeedSearchResultPage ¶ added in v0.3.0
func NewFeedSearchResultPage(searchTerms string, searchResultCount uint, number uint, totalPages uint, pageTitle, description string, categories []SubscribedFeedsByCategory, entries []SubscribedFeedEntry) FeedPage
NewFeedSearchResultPage initializes and returns a new FeedPage containing search results.
type Repository ¶
type Repository interface { // FeedGetByUUID returns a given feed. FeedGetByUUID(feedUUID string) (feed.Feed, error) // FeedEntryGetCount returns the count of entries corresponding to a feed subscription // for a giver user. FeedEntryGetCount(userUUID string) (uint, error) // FeedEntryGetCountByCategory returns the count of entries corresponding to a feed subscription // for a giver user and category. FeedEntryGetCountByCategory(userUUID string, categoryUUID string) (uint, error) // FeedEntryGetCountBySubscription returns the count of entries corresponding to a feed subscription // for a giver user and subscription. FeedEntryGetCountBySubscription(userUUID string, subscriptionUUID string) (uint, error) // FeedEntryGetCount returns the count of entries corresponding to a feed subscription // for a giver user, and matching a search query. FeedEntryGetCountByQuery(userUUID string, searchTerms string) (uint, error) // FeedEntryGetCountByCategoryAndQuery returns the count of entries corresponding to a feed subscription // for a giver user and category, and matching a search query. FeedEntryGetCountByCategoryAndQuery(userUUID string, categoryUUID string, query string) (uint, error) // FeedEntryGetCountBySubscriptionAndQuery returns the count of entries corresponding to a feed subscription // for a giver user and subscription, and matching a search query. FeedEntryGetCountBySubscriptionAndQuery(userUUID string, subscriptionUUID string, query string) (uint, error) // FeedSubscriptionCategoryGetAll returns SubscribedFeeds, sorted by SubscriptionCategory. FeedSubscriptionCategoryGetAll(userUUID string) ([]SubscribedFeedsByCategory, error) // FeedSubscriptionEntryGetN returns at most n SubscriptionEntries, starting at a given offset. FeedSubscriptionEntryGetN(userUUID string, entriesPerPage uint, offset uint) ([]SubscribedFeedEntry, error) // FeedSubscriptionEntryGetNByCategory returns at most n SubscriptionEntries, starting at a given offset. FeedSubscriptionEntryGetNByCategory(userUUID string, categoryUUID string, entriesPerPage uint, offset uint) ([]SubscribedFeedEntry, error) // FeedSubscriptionEntryGetNBySubscription returns at most n SubscriptionEntries, starting at a given offset. FeedSubscriptionEntryGetNBySubscription(userUUID string, subscriptionUUID string, entriesPerPage uint, offset uint) ([]SubscribedFeedEntry, error) // FeedSubscriptionEntryGetNByQuery returns at most n SubscriptionEntries matching a search query, starting at a given offset. FeedSubscriptionEntryGetNByQuery(userUUID string, searchTerms string, entriesPerPage uint, offset uint) ([]SubscribedFeedEntry, error) // FeedSubscriptionEntryGetNByCategoryAndQuery returns at most n SubscriptionEntries matching a search query, starting at a given offset. FeedSubscriptionEntryGetNByCategoryAndQuery(userUUID string, categoryUUID string, query string, entriesPerPage uint, offset uint) ([]SubscribedFeedEntry, error) // FeedSubscriptionEntryGetNBySubscriptionAndQuery returns at most n SubscriptionEntries matching a search query, starting at a given offset. FeedSubscriptionEntryGetNBySubscriptionAndQuery(userUUID string, subscriptionUUID string, query string, entriesPerPage uint, offset uint) ([]SubscribedFeedEntry, error) // FeedQueryingSubscriptionByUUID returns feed subscription metadata for a given user and subscription. FeedQueryingSubscriptionByUUID(userUUID string, subscriptionUUID string) (Subscription, error) // FeedQueryingSubscriptionsByCategory returns a list of feed Subscription titles, sorted by Category. FeedQueryingSubscriptionsByCategory(userUUID string) ([]SubscriptionsByCategory, error) }
Repository provides access to user feed subscriptions for querying.
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service handles oprtaions related to displaying and paginating feeds.
func NewService ¶
func NewService(r Repository) *Service
NewService initializes and returns a new Service.
func (*Service) FeedsByCategoryAndPage ¶
func (s *Service) FeedsByCategoryAndPage(userUUID string, category feed.Category, number uint) (FeedPage, error)
FeedsByCategoryAndPage returns a Page containing a limited and offset number of feeds.
func (*Service) FeedsByCategoryAndQueryAndPage ¶ added in v0.3.0
func (*Service) FeedsByPage ¶
FeedsByPage returns a Page containing a limited and offset number of feeds.
func (*Service) FeedsByQueryAndPage ¶ added in v0.3.0
func (*Service) FeedsBySubscriptionAndPage ¶
func (s *Service) FeedsBySubscriptionAndPage(userUUID string, subscription feed.Subscription, number uint) (FeedPage, error)
FeedsBySubscriptionAndPage returns a Page containing a limited and offset number of feeds.
func (*Service) FeedsBySubscriptionAndQueryAndPage ¶ added in v0.3.0
func (*Service) SubscriptionByUUID ¶ added in v0.3.1
func (s *Service) SubscriptionByUUID(userUUID string, subscriptionUUID string) (Subscription, error)
func (*Service) SubscriptionsByCategory ¶ added in v0.3.1
func (s *Service) SubscriptionsByCategory(userUUID string) ([]SubscriptionsByCategory, error)
type SubscribedFeedEntry ¶
type SubscribedFeedsByCategory ¶
type SubscribedFeedsByCategory struct { feed.Category Unread uint SubscribedFeeds []SubscribedFeed }
type Subscription ¶ added in v0.3.0
type SubscriptionsByCategory ¶ added in v0.3.0
type SubscriptionsByCategory struct { feed.Category Subscriptions []Subscription }
Click to show internal directories.
Click to hide internal directories.