TeamSpeak 3 PHP Framework  1.1.12
TeamSpeak3_Adapter_ServerQuery_Event Class Reference

Provides methods to analyze and format a ServerQuery event. More...

List of all members.

Public Member Functions

 __construct (TeamSpeak3_Helper_String $evt, TeamSpeak3_Node_Host $con=null)
 Creates a new TeamSpeak3_Adapter_ServerQuery_Event object.
 getType ()
 Returns the event type string.
 getData ()
 Returns the event data array.
 getMessage ()
 Returns the event data as an unparsed string.
 offsetExists ($offset)
 
 offsetGet ($offset)
 
 offsetSet ($offset, $value)
 
 offsetUnset ($offset)
 
 __get ($offset)
 
 __set ($offset, $value)
 

Protected Attributes

 $type = null
 $data = null
 $mesg = null

Detailed Description

Provides methods to analyze and format a ServerQuery event.

Definition at line 32 of file Event.php.


Constructor & Destructor Documentation

Creates a new TeamSpeak3_Adapter_ServerQuery_Event object.

Parameters:
TeamSpeak3_Helper_String$evt
TeamSpeak3_Node_Host$con
Exceptions:
TeamSpeak3_Adapter_Exception
Returns:
TeamSpeak3_Adapter_ServerQuery_Event

Definition at line 63 of file Event.php.

References TeamSpeak3\ERROR, TeamSpeak3\EVENT, TeamSpeak3_Helper_Signal\getInstance(), TeamSpeak3\SEPARATOR_CELL, TeamSpeak3\SEPARATOR_PAIR, TeamSpeak3_Helper_String\split(), and TeamSpeak3_Helper_String\startsWith().

  {
    if(!$evt->startsWith(TeamSpeak3::EVENT))
    {
      throw new TeamSpeak3_Adapter_Exception("invalid notification event format");
    }

    list($type, $data) = $evt->split(TeamSpeak3::SEPARATOR_CELL, 2);

    if(empty($data))
    {
      throw new TeamSpeak3_Adapter_Exception("invalid notification event data");
    }

    $fake = new TeamSpeak3_Helper_String(TeamSpeak3::ERROR . TeamSpeak3::SEPARATOR_CELL . "id" . TeamSpeak3::SEPARATOR_PAIR . 0 . TeamSpeak3::SEPARATOR_CELL . "msg" . TeamSpeak3::SEPARATOR_PAIR . "ok");
    $repl = new TeamSpeak3_Adapter_ServerQuery_Reply(array($data, $fake), $type);

    $this->type = $type->substr(strlen(TeamSpeak3::EVENT));
    $this->data = $repl->toList();
    $this->mesg = $data;

    TeamSpeak3_Helper_Signal::getInstance()->emit("notifyEvent", $this, $con);
    TeamSpeak3_Helper_Signal::getInstance()->emit("notify" . ucfirst($this->type), $this, $con);
  }

Member Function Documentation

Returns the event type string.

Returns:
TeamSpeak3_Helper_String

Definition at line 93 of file Event.php.

Referenced by offsetSet().

  {
    return $this->type;
  }

Returns the event data array.

Returns:
array

Definition at line 103 of file Event.php.

  {
    return $this->data;
  }

Returns the event data as an unparsed string.

Returns:
TeamSpeak3_Helper_String

Definition at line 113 of file Event.php.

  {
    return $this->mesg;
  }

Definition at line 121 of file Event.php.

Referenced by offsetGet().

  {
    return array_key_exists($offset, $this->data) ? TRUE : FALSE;
  }

Definition at line 129 of file Event.php.

References offsetExists().

Referenced by __get().

  {
    if(!$this->offsetExists($offset))
    {
      throw new TeamSpeak3_Adapter_ServerQuery_Exception("invalid parameter", 0x602);
    }

    return $this->data[$offset];
  }

Definition at line 142 of file Event.php.

References getType().

Referenced by __set().

  {
    throw new TeamSpeak3_Node_Exception("event '" . $this->getType() . "' is read only");
  }

Definition at line 150 of file Event.php.

  {
    unset($this->data[$offset]);
  }

Definition at line 158 of file Event.php.

References offsetGet().

  {
    return $this->offsetGet($offset);
  }
TeamSpeak3_Adapter_ServerQuery_Event::__set ( offset,
value 
)

Definition at line 166 of file Event.php.

References offsetSet().

  {
    $this->offsetSet($offset, $value);
  }

The documentation for this class was generated from the following file:
 All Classes Files Functions Variables