public static function init() { if (self::$initialized) { return; } self::$s_referenceWriter = new ReferenceWriter(); self::$m_defaultWriter = new ObjectWriter(); self::$m_nullWriter = new NullWriter(); self::$m_numberWriter = new NumberWriter(); self::$m_stringWriter = new StringWriter(false); self::$m_arrayWriter = new ArrayWriter(); self::$m_dateWriter = new DateWriter(FALSE); self::$m_booleanWriter = new BooleanWriter(); self::$m_messageWriter = new AMFMessageWriter(); self::$m_headerWriter = new AMFHeaderWriter(); self::$m_bodyWriter = new AMFBodyWriter(); self::$m_mapWriter = new BoundPropertyBagWriter(); self::$m_bodyHolderWriter = new BodyHolderWriter(); self::$m_stdClassWriter = new StdClassWriter(); self::$m_resourceWriter = new ResourceWriter(); self::$m_dataTableAsListWriter = new DataTableAsListWriter(); self::$m_orbdateWriter = new ORBDateTimeWriter(FALSE); self::$m_arrayObjectWriter = new ArrayObjectWriter(); self::$m_xmlWriter = new ORBXMLWriter(); self::$m_writers['NULL'] = self::$m_nullWriter; self::$m_writers['integer'] = self::$m_numberWriter; self::$m_writers['double'] = self::$m_numberWriter; self::$m_writers['boolean'] = self::$m_booleanWriter; self::$m_writers['string'] = self::$m_stringWriter; self::$m_writers['Request'] = self::$m_messageWriter; self::$m_writers['Header'] = self::$m_headerWriter; self::$m_writers['Body'] = self::$m_bodyWriter; self::$m_writers['DateTime'] = self::$m_dateWriter; self::$m_writers['ORBDateTime'] = self::$m_orbdateWriter; self::$m_writers['array'] = self::$m_arrayWriter; self::$m_writers['object'] = self::$m_defaultWriter; self::$m_writers['BodyHolder'] = self::$m_bodyHolderWriter; self::$m_writers['stdClass'] = self::$m_stdClassWriter; self::$m_writers['DataTable'] = self::$m_dataTableAsListWriter; self::$m_writers['ArrayObject'] = self::$m_arrayObjectWriter; self::$m_writers['DOMDocument'] = self::$m_xmlWriter; self::$m_writers['DOMElement'] = self::$m_xmlWriter; self::$m_writers['DOMNode'] = self::$m_xmlWriter; self::$initialized = true; }