Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • String getText() - returnerer teksten til en tweet

  • TwitterAccount getOwner() - returnerer kontoen som tweeten kom fra

  • Tweet getOriginalTweet() - returnerer original-tweeten, hvis den er en retweet, ellers null.

  • int getRetweetCount() - returnerer antall ganger denne tweeten har blitt retweetet
PlantUML Macro
object "A: Tweet" as tweet1 {
	text = "Kvitre-kvitre"
}

object "B: Tweet" as tweet2 {
	text = "Kvitre-kvitre"
}

object "C: Tweet" as tweet3 {
	text = "Kvitre-kvitre"
}

tweet2 -down-> tweet1: "originalTweet"
tweet3 -down-> tweet1: "originalTweet"

Riktig objektstruktur, når B er en retweet av A og C er en retweet av B

PlantUML Macro
object "A: Tweet" as tweet1 {
	text = "Kvitre-kvitre"
}

object "B: Tweet" as tweet2 {
	text = "Kvitre-kvitre"
}

object "C: Tweet" as tweet3 {
	text = "Kvitre-kvitre"
}

tweet2 -down-> tweet1: "originalTweet"
tweet3 -down-> tweet2: "originalTweet"

Feil objektstruktur, når B er en retweet av A og C er en retweet av B

...

TwitterAccount skal ha metodene:

  • String getUserName() - returnerer brukernavnet

  • void follow(TwitterAccount account) - denne (this) kontoen starter å følge account

  • void unfollow(TwitterAccount account) - slutt å følge account

  • boolean isFollowing(TwitterAccount account) - returnerer om denne kontoen følger account

  • boolean isFollowedBy(TwitterAccount account) - returnerer om account følger denne kontoen

  • void tweet(String) - lager en ny tweet for denne kontoen

  • void retweet(Tweet tweet) - retweeter tweet fra denne kontoen

  • Tweet getTweet(int i) - returner tweet nummer i, der 1 er den nyeste, 2 den nest nyeste, … (merk rekkefølgen!)

  • int getTweetCount() - returner antall tweets til kontoen

  • int getRetweetCount() - returner antall retweets av tweets fra denne kontoen

Trinn 1

  • Implementer Tweet-klassen.
  • For å teste klassen må du sende inn TwitterAccount-objekter i konstruktøren. Lag en forenklet versjon av TwitterAccount-klassen for dette formålet, der du kun implementerer konstruktøren og evt. en passende toString(). Dette gjør det mulig å teste Tweet-klassen din uten at du må implementere hele TwitterAccount-klassen først.

...