false. */ var $log4jNamespace = false; /** * @var LoggerXmlLayout * @access private */ var $xmlLayout = null; /** * Create a socket connection using defined parameters */ public function activateOptions() { LoggerLog::debug("LoggerAppenderSocket::activateOptions() creating a socket..."); $errno = 0; $errstr = ''; $this->sp = @fsockopen($this->getRemoteHost(), $this->getPort(), $errno, $errstr, $this->getTimeout()); if ($errno) { LoggerLog::debug("LoggerAppenderSocket::activateOptions() socket error [$errno] $errstr"); $this->closed = true; } else { LoggerLog::debug("LoggerAppenderSocket::activateOptions() socket created [".$this->sp."]"); if ($this->getUseXml()) { $this->xmlLayout = LoggerLayout::factory('LoggerXmlLayout'); if ($this->xmlLayout === null) { LoggerLog::debug("LoggerAppenderSocket::activateOptions() useXml is true but layout is null"); $this->setUseXml(false); } else { $this->xmlLayout->setLocationInfo($this->getLocationInfo()); $this->xmlLayout->setLog4jNamespace($this->getLog4jNamespace()); $this->xmlLayout->activateOptions(); } } $this->closed = false; } } public function close() { fclose($this->sp); $this->closed = true; } /** * @return string */ public function getHostname() { return $this->getRemoteHost(); } /** * @return boolean */ public function getLocationInfo() { return $this->locationInfo; } /** * @return boolean */ public function getLog4jNamespace() { return $this->log4jNamespace; } /** * @return integer */ public function getPort() { return $this->port; } public function getRemoteHost() { return $this->remoteHost; } /** * @return integer */ public function getTimeout() { return $this->timeout; } /** * @var boolean */ public function getUseXml() { return $this->useXml; } public function reset() { $this->close(); parent::reset(); } /** * @param mixed */ public function setLocationInfo($flag) { $this->locationInfo = LoggerOptionConverter::toBoolean($flag, $this->getLocationInfo()); } /** * @param mixed */ public function setLog4jNamespace($flag) { $this->log4jNamespace = LoggerOptionConverter::toBoolean($flag, $this->getLog4jNamespace()); } /** * @param integer */ public function setPort($port) { $port = LoggerOptionConverter::toInt($port, 0); if ($port > 0 and $port < 65535) $this->port = $port; } /** * @param string */ public function setRemoteHost($hostname) { $this->remoteHost = $hostname; } /** * @param integer */ public function setTimeout($timeout) { $this->timeout = LoggerOptionConverter::toInt($timeout, $this->getTimeout()); } /** * @param mixed */ public function setUseXml($flag) { $this->useXml = LoggerOptionConverter::toBoolean($flag, $this->getUseXml()); } /** * @param LoggerLoggingEvent */ public function append($event) { if ($this->sp) { LoggerLog::debug("LoggerAppenderSocket::append()"); if ($this->getLocationInfo()) $event->getLocationInformation(); if (!$this->getUseXml()) { $sEvent = serialize($event); fwrite($this->sp, $sEvent, strlen($sEvent)); } else { fwrite($this->sp, $this->xmlLayout->format($event)); } // not sure about it... fflush($this->sp); } } }