299 if st.GetLang() != "" { |
299 if st.GetLang() != "" { |
300 writeField(buf, "xml:lang", st.GetLang()) |
300 writeField(buf, "xml:lang", st.GetLang()) |
301 } |
301 } |
302 buf.WriteString(">") |
302 buf.WriteString(">") |
303 |
303 |
|
304 if m, ok := st.(*Message) ; ok { |
|
305 err := xml.Marshal(buf, m.Subject) |
|
306 if err != nil { |
|
307 return nil, err |
|
308 } |
|
309 err = xml.Marshal(buf, m.Body) |
|
310 if err != nil { |
|
311 return nil, err |
|
312 } |
|
313 err = xml.Marshal(buf, m.Thread) |
|
314 if err != nil { |
|
315 return nil, err |
|
316 } |
|
317 } |
|
318 if p, ok := st.(*Presence) ; ok { |
|
319 err := xml.Marshal(buf, p.Show) |
|
320 if err != nil { |
|
321 return nil, err |
|
322 } |
|
323 err = xml.Marshal(buf, p.Status) |
|
324 if err != nil { |
|
325 return nil, err |
|
326 } |
|
327 err = xml.Marshal(buf, p.Priority) |
|
328 if err != nil { |
|
329 return nil, err |
|
330 } |
|
331 } |
304 if st.GetNested() != nil { |
332 if st.GetNested() != nil { |
305 xml.Marshal(buf, st.GetNested()) |
333 xml.Marshal(buf, st.GetNested()) |
306 } else if st.generic() != nil { |
334 } else if st.generic() != nil { |
307 xml.Marshal(buf, st.generic()) |
335 xml.Marshal(buf, st.generic()) |
308 } else if st.innerxml() != "" { |
336 } else if st.innerxml() != "" { |
367 |
395 |
368 func (m *Message) MarshalXML() ([]byte, os.Error) { |
396 func (m *Message) MarshalXML() ([]byte, os.Error) { |
369 return marshalXML(m) |
397 return marshalXML(m) |
370 } |
398 } |
371 |
399 |
372 func (m *Message) InnerMarshal(w io.Writer) os.Error { |
|
373 err := xml.Marshal(w, m.Subject) |
|
374 if err != nil { |
|
375 return err |
|
376 } |
|
377 err = xml.Marshal(w, m.Body) |
|
378 if err != nil { |
|
379 return err |
|
380 } |
|
381 err = xml.Marshal(w, m.Thread) |
|
382 if err != nil { |
|
383 return err |
|
384 } |
|
385 return nil |
|
386 } |
|
387 |
|
388 func (p *Presence) GetName() string { |
400 func (p *Presence) GetName() string { |
389 return "presence" |
401 return "presence" |
390 } |
402 } |
391 |
403 |
392 func (p *Presence) GetTo() string { |
404 func (p *Presence) GetTo() string { |
429 return p.Innerxml |
441 return p.Innerxml |
430 } |
442 } |
431 |
443 |
432 func (p *Presence) MarshalXML() ([]byte, os.Error) { |
444 func (p *Presence) MarshalXML() ([]byte, os.Error) { |
433 return marshalXML(p) |
445 return marshalXML(p) |
434 } |
|
435 |
|
436 func (p *Presence) InnerMarshal(w io.Writer) os.Error { |
|
437 err := xml.Marshal(w, p.Show) |
|
438 if err != nil { |
|
439 return err |
|
440 } |
|
441 err = xml.Marshal(w, p.Status) |
|
442 if err != nil { |
|
443 return err |
|
444 } |
|
445 err = xml.Marshal(w, p.Priority) |
|
446 if err != nil { |
|
447 return err |
|
448 } |
|
449 return nil |
|
450 } |
446 } |
451 |
447 |
452 func (iq *Iq) GetName() string { |
448 func (iq *Iq) GetName() string { |
453 return "iq" |
449 return "iq" |
454 } |
450 } |