Options
All
  • Public
  • Public/Protected
  • All
Menu

Class MPDProtocol<EventTypes>

Type parameters

  • EventTypes: string | symbol | {}

Hierarchy

Index

Properties

Private Optional _connection

_connection: SocketWrapper

Private idle

idle: boolean = false

Optional mpdVersion

mpdVersion: [number, number, number]

The version (major, minor, patch) of the connected daemon

Private queuedRequests

queuedRequests: MPDRequest[] = []

Private ready

ready: boolean = false

Private receivedLines

receivedLines: string[] = []

Private runningRequests

runningRequests: MPDRequest[] = []

Static EventEmitter

EventEmitter: EventEmitterStatic

Static Private failureRegExp

failureRegExp: RegExp = /ACK \[([0-9]+)@[0-9]+\] \{[^\}]*\} (.*)/

Static prefixed

prefixed: string | boolean

Accessors

isReady

  • get isReady(): boolean
  • Returns boolean

Methods

addListener

  • addListener<T>(event: T, fn: ListenerFn<EventArgs<EventTypes, T>>, context?: any): this
  • Type parameters

    • T: EventNames<EventTypes>

    Parameters

    • event: T
    • fn: ListenerFn<EventArgs<EventTypes, T>>
    • Optional context: any

    Returns this

Protected connect

  • Connect to the daemon via the given connection

    Parameters

    Returns Promise<void>

Private dequeueRequests

  • dequeueRequests(): void
  • Returns void

disconnect

  • disconnect(): void
  • Disconnect from the daemon

    Returns void

emit

  • emit<T>(event: T, ...args: EventArgs<EventTypes, T>): boolean
  • Calls each of the listeners registered for a given event.

    Type parameters

    • T: EventNames<EventTypes>

    Parameters

    • event: T
    • Rest ...args: EventArgs<EventTypes, T>

    Returns boolean

Private enqueueRequest

  • Parameters

    Returns void

eventNames

  • eventNames(): Array<EventNames<EventTypes>>
  • Return an array listing the events for which the emitter has registered listeners.

    Returns Array<EventNames<EventTypes>>

Private idleCallback

  • idleCallback(lines: string[]): void
  • Parameters

    • lines: string[]

    Returns void

Private initialCallback

  • initialCallback(msg: string): void
  • Parameters

    • msg: string

    Returns void

listenerCount

  • listenerCount(event: EventNames<EventTypes>): number
  • Return the number of listeners listening to a given event.

    Parameters

    • event: EventNames<EventTypes>

    Returns number

listeners

  • listeners<T>(event: T): Array<ListenerFn<EventArgs<EventTypes, T>>>
  • Return the listeners registered for a given event.

    Type parameters

    • T: EventNames<EventTypes>

    Parameters

    • event: T

    Returns Array<ListenerFn<EventArgs<EventTypes, T>>>

off

  • off<T>(event: T, fn?: EventEmitter.ListenerFn<EventArgs<EventTypes, T>>, context?: any, once?: undefined | false | true): this
  • Type parameters

    • T: EventNames<EventTypes>

    Parameters

    • event: T
    • Optional fn: EventEmitter.ListenerFn<EventArgs<EventTypes, T>>
    • Optional context: any
    • Optional once: undefined | false | true

    Returns this

on

  • on<T>(event: T, fn: ListenerFn<EventArgs<EventTypes, T>>, context?: any): this
  • Add a listener for a given event.

    Type parameters

    • T: EventNames<EventTypes>

    Parameters

    • event: T
    • fn: ListenerFn<EventArgs<EventTypes, T>>
    • Optional context: any

    Returns this

once

  • once<T>(event: T, fn: ListenerFn<EventArgs<EventTypes, T>>, context?: any): this
  • Add a one-time listener for a given event.

    Type parameters

    • T: EventNames<EventTypes>

    Parameters

    • event: T
    • fn: ListenerFn<EventArgs<EventTypes, T>>
    • Optional context: any

    Returns this

parse

  • parse<T>(lines: string[], markers: string[], convert: (valueMap: Map<string, string>) => T): T[]
  • Helper function for parsing a response from the daemon into an array of objects

    Type parameters

    • T

    Parameters

    • lines: string[]

      The daemon response

    • markers: string[]

      Markers are keys denoting the start of a new object within the response

    • convert: (valueMap: Map<string, string>) => T

      Converts a key-value Map from the response into the desired target object

        • (valueMap: Map<string, string>): T
        • Parameters

          • valueMap: Map<string, string>

          Returns T

    Returns T[]

Private processReceivedMessage

  • processReceivedMessage(msg: string): void
  • Parameters

    • msg: string

    Returns void

removeAllListeners

  • removeAllListeners(event?: EventNames<EventTypes>): this
  • Remove all listeners, or those of the specified event.

    Parameters

    • Optional event: EventNames<EventTypes>

    Returns this

removeListener

  • removeListener<T>(event: T, fn?: EventEmitter.ListenerFn<EventArgs<EventTypes, T>>, context?: any, once?: undefined | false | true): this
  • Remove the listeners of a given event.

    Type parameters

    • T: EventNames<EventTypes>

    Parameters

    • event: T
    • Optional fn: EventEmitter.ListenerFn<EventArgs<EventTypes, T>>
    • Optional context: any
    • Optional once: undefined | false | true

    Returns this

sendCommand

  • sendCommand(cmd: string): Promise<string[]>
  • Send a command to the daemon. The returned promise will be resolved with an array containing the lines of the daemon's response.

    Parameters

    • cmd: string

    Returns Promise<string[]>

Generated using TypeDoc