You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

MessageProcessor.kt 1.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package com.dmdirc.ktirc.messages.processors
  2. import com.dmdirc.ktirc.events.IrcEvent
  3. import com.dmdirc.ktirc.model.IrcMessage
  4. internal interface MessageProcessor {
  5. /**
  6. * The messages which this handler can process.
  7. */
  8. val commands: Array<String>
  9. /**
  10. * Processes the given message.
  11. */
  12. fun process(message: IrcMessage): List<IrcEvent>
  13. }
  14. internal val messageProcessors = listOf(
  15. AccountProcessor(),
  16. AwayProcessor(),
  17. AuthenticationProcessor(),
  18. BatchProcessor(),
  19. CapabilityProcessor(),
  20. ChangeHostProcessor(),
  21. ISupportProcessor(),
  22. JoinProcessor(),
  23. KickProcessor(),
  24. ModeProcessor(),
  25. MotdProcessor(),
  26. NamesProcessor(),
  27. NickChangeErrorProcessor(),
  28. NickProcessor(),
  29. NoticeProcessor(),
  30. PartProcessor(),
  31. PingProcessor(),
  32. PrivmsgProcessor(),
  33. TopicProcessor(),
  34. QuitProcessor(),
  35. WelcomeProcessor()
  36. )