trait HackerNews extends Logging
HackerNews API client
scala> import hackernews4s.v0._ scala> val hn = new HackerNews {} scala> val item: Option[Item] = hn.getItem(ItemId(123))
- Alphabetic
- By Inheritance
- HackerNews
- Logging
- LoggingDsl
- LoggerProvider
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val BASE_URL: String
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
debug(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
debug(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
error(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
error(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
getAskStories(limit: Int = 10): Seq[Item]
Retrieves actual ask stories.
Retrieves actual ask stories.
scala> import hackernews4s.v0._ scala> val items: Seq[Item] = HackerNews.getAskStories()
-
def
getChangedItems(): Seq[Item]
Retrieves actual changed item data for ids from "Changed Items and Profiles API".
Retrieves actual changed item data for ids from "Changed Items and Profiles API".
scala> import hackernews4s.v0._ scala> HackerNews.getChangedItems().size > 0 res0: Boolean = true
-
def
getChangedProfiles(): Seq[User]
Retrieves actual changed user data for ids from "Changed Items and Profiles API".
Retrieves actual changed user data for ids from "Changed Items and Profiles API".
scala> import hackernews4s.v0._ scala> HackerNews.getChangedProfiles().size >= 0 res0: Boolean = true
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
getCurrentLargestItemId(): ItemId
scala> import hackernews4s.v0._ scala> val itemId: ItemId = HackerNews.getCurrentLargestItemId()
-
def
getIdsForChangedItemsAndProfiles(): ChangedItemsAndProfiles
Retrieves changed item ids and user ids from Changed Items and Profiles API.
Retrieves changed item ids and user ids from Changed Items and Profiles API.
The item and profile changes are at https://hacker-news.firebaseio.com/v0/updates.
scala> import hackernews4s.v0._ scala> val ChangedItemsAndProfiles(itemIds, userIds) = HackerNews.getIdsForChangedItemsAndProfiles()
-
def
getItem(itemId: ItemId): Option[Item]
Retrieves a HackerNews item from Items API.
Retrieves a HackerNews item from Items API. Stories, comments, jobs, Ask HNs and even polls are just items. They're identified by their ids, which are unique integers, and live under https://hacker-news.firebaseio.com/v0/item/.
scala> import hackernews4s.v0._ scala> val item: Option[Item] = HackerNews.getItem(ItemId(123))
-
def
getItemIdsForAskStories(): Seq[ItemId]
Retrieves HackerNews stories' item ids from Ask Stories API.
Retrieves HackerNews stories' item ids from Ask Stories API. The current new 500 stories are at https://hacker-news.firebaseio.com/v0/askstories.
scala> import hackernews4s.v0._ scala> val ids: Seq[ItemId] = HackerNews.getItemIdsForAskStories()
-
def
getItemIdsForJobStories(): Seq[ItemId]
Retrieves HackerNews stories' item ids from Job Stories API.
Retrieves HackerNews stories' item ids from Job Stories API. The current new 500 stories are at https://hacker-news.firebaseio.com/v0/jobstories.
scala> import hackernews4s.v0._ scala> val ids: Seq[ItemId] = HackerNews.getItemIdsForJobStories()
-
def
getItemIdsForNewStories(): Seq[ItemId]
Retrieves HackerNews top stories' item ids from New Stories API.
Retrieves HackerNews top stories' item ids from New Stories API. The current new 500 stories are at https://hacker-news.firebaseio.com/v0/newstories.
scala> import hackernews4s.v0._ scala> val ids: Seq[ItemId] = HackerNews.getItemIdsForNewStories() scala> ids.size res0: Int = 500
-
def
getItemIdsForShowStories(): Seq[ItemId]
Retrieves HackerNews stories' item ids from Show Stories API.
Retrieves HackerNews stories' item ids from Show Stories API. The current new 500 stories are at https://hacker-news.firebaseio.com/v0/showstories.
scala> import hackernews4s.v0._ scala> val ids: Seq[ItemId] = HackerNews.getItemIdsForShowStories()
-
def
getItemIdsForTopStories(): Seq[ItemId]
Retrieves HackerNews top stories' item ids from Top Stories API.
Retrieves HackerNews top stories' item ids from Top Stories API. The current top 500 stories are at https://hacker-news.firebaseio.com/v0/topstories.
scala> import hackernews4s.v0._ scala> val ids: Seq[ItemId] = HackerNews.getItemIdsForTopStories() scala> ids.size res0: Int = 500
-
def
getJobStories(limit: Int = 10): Seq[Item]
Retrieves actual job stories.
Retrieves actual job stories.
scala> import hackernews4s.v0._ scala> val items: Seq[Item] = HackerNews.getJobStories() scala> items.size res0: Int = 10
-
def
getMaxItemId(): ItemId
Max Item ID
Max Item ID
The current largest item id is at https://hacker-news.firebaseio.com/v0/maxitem.
scala> import hackernews4s.v0._ scala> val itemId: ItemId = HackerNews.getMaxItemId() scala> itemId.id > 8447116L res0: Boolean = true
-
def
getNewStories(limit: Int = 10): Seq[Item]
Retrieves actual new stories.
Retrieves actual new stories.
scala> import hackernews4s.v0._ scala> val items: Seq[Item] = HackerNews.getNewStories() scala> items.size res0: Int = 10
-
def
getShowStories(limit: Int = 10): Seq[Item]
Retrieves actual show stories.
Retrieves actual show stories.
scala> import hackernews4s.v0._ scala> val items: Seq[Item] = HackerNews.getShowStories()
-
def
getTopStories(limit: Int = 10): Seq[Item]
Retrieves actual top stories.
Retrieves actual top stories.
scala> import hackernews4s.v0._ scala> val items: Seq[Item] = HackerNews.getTopStories() scala> items.size res0: Int = 10
-
def
getUser(userId: UserId): Option[User]
Retrieves a HackerNews user information from Users API.
Retrieves a HackerNews user information from Users API. Users are identified by case-sensitive ids, and live under https://hacker-news.firebaseio.com/v0/user/.
scala> import hackernews4s.v0._ scala> val user: Option[User] = HackerNews.getUser(UserId("seratch"))
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
def
info(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
info(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
isDebugEnabled: Boolean
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
isErrorEnabled: Boolean
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
isInfoEnabled: Boolean
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isTraceEnabled: Boolean
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
isWarnEnabled: Boolean
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
logger: Logger
- Attributes
- protected
- Definition Classes
- LoggerProvider
-
def
loggerName: String
- Attributes
- protected
- Definition Classes
- LoggerProvider
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
trace(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
trace(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
warn(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl
-
def
warn(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingDsl