_delay) { return self::DELAY_IMMEDIATE; } return $this->_delay; } /** * Set Delay * * @param int $delay * @return Zend_Mobile_Push_Message_Mpns_Raw * @throws Zend_Mobile_Push_Message_Exception */ public function setDelay($delay) { if (!in_array($delay, array( self::DELAY_IMMEDIATE, self::DELAY_450S, self::DELAY_900S ))) { throw new Zend_Mobile_Push_Message_Exception('$delay must be one of the DELAY_* constants'); } $this->_delay = $delay; return $this; } /** * Set Message * * @param string $msg XML string * @return Zend_Mobile_Push_Message_Mpns_Raw * @throws Zend_Mobile_Push_Message_Exception */ public function setMessage($msg) { if (!is_string($msg)) { throw new Zend_Mobile_Push_Message_Exception('$msg is not a string'); } if (!Zend_Xml_Security::scan($msg)) { throw new Zend_Mobile_Push_Message_Exception('$msg is not valid xml'); } $this->_msg = $msg; return $this; } /** * Get Message * * @return string */ public function getMessage() { return $this->_msg; } /** * Get Notification Type * * @return string */ public static function getNotificationType() { return 'raw'; } /** * Get XML Payload * * @return string */ public function getXmlPayload() { return $this->_msg; } /** * Validate proper mpns message * * @return boolean */ public function validate() { if (!isset($this->_token) || strlen($this->_token) === 0) { return false; } if (empty($this->_msg)) { return false; } return parent::validate(); } }