OXID eShop CE  4.8.12
 All Classes Files Functions Variables Pages
oxexceptiontodisplay.php
Go to the documentation of this file.
1 <?php
2 
8 {
14  private $_sMessage;
15 
21  protected $_blDebug = false;
22 
28  private $_sStackTrace;
29 
35  private $_aValues;
36 
42  private $_sType;
43 
51  public function setStackTrace($sStackTrace)
52  {
53  $this->_sStackTrace = $sStackTrace;
54  }
55 
61  public function getStackTrace()
62  {
63  return $this->_sStackTrace;
64  }
65 
73  public function setValues( $aValues )
74  {
75  $this->_aValues = $aValues;
76  }
77 
86  public function addValue( $sName, $sValue )
87  {
88  $this->_aValues[$sName] = $sValue;
89  }
90 
98  public function setExceptionType( $sType )
99  {
100  $this->_sType = $sType;
101  }
102 
108  public function getErrorClassType()
109  {
110  return $this->_sType;
111  }
112 
120  public function getValue( $sName )
121  {
122  return $this->_aValues[$sName];
123  }
124 
132  public function setDebug( $bl )
133  {
134  $this->_blDebug = $bl;
135  }
136 
144  public function setMessage($sMessage)
145  {
146  $this->_sMessage = $sMessage;
147  }
148 
155  public function setMessageArgs()
156  {
157  $this->_aMessageArgs = func_get_args();
158  }
159 
165  public function getOxMessage()
166  {
167  if ( $this->_blDebug ) {
168  return $this;
169  } else {
170  $sString = oxRegistry::getLang()->translateString($this->_sMessage);
171 
172  if ( !empty( $this->_aMessageArgs ) ) {
173  $sString = vsprintf( $sString, $this->_aMessageArgs );
174  }
175 
176  return $sString;
177  }
178  }
179 
185  public function __toString()
186  {
187  $sRes = $this->getErrorClassType() . " (time: " . date('Y-m-d H:i:s', oxRegistry::get("oxUtilsDate")->getTime()) . "): " . $this->getOxMessage() . " \n Stack Trace: " . $this->getStackTrace() . "\n";
188  foreach ( $this->_aValues as $key => $value ) {
189  $sRes .= $key. " => ". $value . "\n";
190  }
191  return $sRes;
192  }
193 }