示例#1
0
func (elm *N) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "N"); err != nil {
		return err
	}
	if elm.FAMILY != nil {
		if err = e.SimpleElement(NS, "FAMILY", *elm.FAMILY); err != nil {
			return err
		}
	}
	if elm.GIVEN != nil {
		if err = e.SimpleElement(NS, "GIVEN", *elm.GIVEN); err != nil {
			return err
		}
	}
	if elm.NIDDLE != nil {
		if err = e.SimpleElement(NS, "NIDDLE", *elm.NIDDLE); err != nil {
			return err
		}
	}
	if elm.PREFIX != nil {
		if err = e.SimpleElement(NS, "PREFIX", *elm.PREFIX); err != nil {
			return err
		}
	}
	if elm.SUFFIX != nil {
		if err = e.SimpleElement(NS, "SUFFIX", *elm.SUFFIX); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#2
0
func (elm *Item) Encode(e *xmlencoder.Encoder) error {
var err error
if err = e.StartElement(NS, "item"); err != nil { return err }
if elm.Affiliation != nil {
if err = e.Attribute("", "affiliation", string(*elm.Affiliation)); err != nil { return err }
}
if elm.Jid != nil {
if err = e.Attribute("", "jid", elm.Jid.String()); err != nil { return err }
}
if elm.Nick != nil {
if err = e.Attribute("", "nick", *elm.Nick); err != nil { return err }
}
if elm.Role != nil {
if err = e.Attribute("", "role", string(*elm.Role)); err != nil { return err }
}
if err = e.StartElement(NS, "actor"); err != nil { return err }
if elm.Actor.Jid != nil {
if err = e.Attribute("", "jid", elm.Actor.Jid.String()); err != nil { return err }
}
if err = e.EndElement(); err != nil { return err }
if elm.Reason != nil {
if err = e.SimpleElement(NS, "reason", *elm.Reason); err != nil { return err }
}
if elm.Continue {
if err = e.StartElement(NS, "continue"); err != nil { return err }
if err = e.EndElement(); err != nil { return err }
}
if err = e.EndElement(); err != nil { return err }
return nil
}
示例#3
0
func (elm *BDAY) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.SimpleElement(NS, "BDAY", string(*elm)); err != nil {
		return err
	}
	return nil
}
示例#4
0
func (elm *SORTSTRING) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.SimpleElement(NS, "SORT-STRING", string(*elm)); err != nil {
		return err
	}
	return nil
}
示例#5
0
func (elm *Vcard) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "vCard"); err != nil {
		return err
	}
	if elm.VERSION != nil {
		if err = e.SimpleElement(NS, "VERSION", *elm.VERSION); err != nil {
			return err
		}
	}
	if elm.FN != nil {
		if err = e.SimpleElement(NS, "FN", *elm.FN); err != nil {
			return err
		}
	}
	if elm.N != nil {
		if err = elm.N.Encode(e); err != nil {
			return err
		}
	}
	for _, x := range elm.Fields {
		if err = x.(xmlencoder.Extension).Encode(e); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#6
0
func (elm *Message) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "message"); err != nil {
		return err
	}
	if elm.From != nil {
		if err = e.Attribute("", "from", elm.From.String()); err != nil {
			return err
		}
	}
	if elm.To != nil {
		if err = e.Attribute("", "to", elm.To.String()); err != nil {
			return err
		}
	}
	if elm.Id != nil {
		if err = e.Attribute("", "id", *elm.Id); err != nil {
			return err
		}
	}
	if elm.Type != nil {
		if err = e.Attribute("", "type", string(*elm.Type)); err != nil {
			return err
		}
	}
	if elm.Lang != nil {
		if err = e.Attribute("http://www.w3.org/XML/1998/namespace", "lang", string(*elm.Lang)); err != nil {
			return err
		}
	}
	if elm.Thread != nil {
		if err = e.SimpleElement(NS, "thread", *elm.Thread); err != nil {
			return err
		}
	}
	if elm.Subject != nil {
		elm.Subject.Encode(e, NS, "subject")
	}
	if elm.Body != nil {
		elm.Body.Encode(e, NS, "body")
	}
	for _, x := range elm.X {
		if err = x.(xmlencoder.Extension).Encode(e); err != nil {
			return err
		}
	}
	if elm.Error != nil {
		if err = elm.Error.Encode(e); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#7
0
func (elm *EMAIL) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "EMAIL"); err != nil {
		return err
	}
	if elm.HOME {
		if err = e.StartElement(NS, "HOME"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.WORK {
		if err = e.StartElement(NS, "WORK"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.INTERNET {
		if err = e.StartElement(NS, "INTERNET"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.PREF {
		if err = e.StartElement(NS, "PREF"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.X400 {
		if err = e.StartElement(NS, "X400"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.USERID != nil {
		if err = e.SimpleElement(NS, "USERID", *elm.USERID); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#8
0
func (elm *Destroy) Encode(e *xmlencoder.Encoder) error {
var err error
if err = e.StartElement(NS, "destroy"); err != nil { return err }
if elm.Jid != nil {
if err = e.Attribute("", "jid", elm.Jid.String()); err != nil { return err }
}
if elm.Reason != nil {
if err = e.SimpleElement(NS, "reason", *elm.Reason); err != nil { return err }
}
if err = e.EndElement(); err != nil { return err }
return nil
}
示例#9
0
func (elm *CATEGORIES) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "CATEGORIES"); err != nil {
		return err
	}
	for _, x := range elm.KEYWORD {
		if err = e.SimpleElement(NS, "KEYWORD", x); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#10
0
func (elm *Mechanisms) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "mechanisms"); err != nil {
		return err
	}
	for _, x := range elm.Mechanism {
		if err = e.SimpleElement(NS, "mechanism", x); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#11
0
func (elm *Invite) Encode(e *xmlencoder.Encoder) error {
var err error
if err = e.StartElement(NS, "invite"); err != nil { return err }
if elm.From != nil {
if err = e.Attribute("", "from", elm.From.String()); err != nil { return err }
}
if elm.To != nil {
if err = e.Attribute("", "to", elm.To.String()); err != nil { return err }
}
if elm.Reason != nil {
if err = e.SimpleElement(NS, "reason", *elm.Reason); err != nil { return err }
}
if err = e.EndElement(); err != nil { return err }
return nil
}
示例#12
0
func (elm *Field) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "field"); err != nil {
		return err
	}
	if elm.Label != nil {
		if err = e.Attribute("", "label", *elm.Label); err != nil {
			return err
		}
	}
	if elm.Type != nil {
		if err = e.Attribute("", "type", string(*elm.Type)); err != nil {
			return err
		}
	}
	if elm.Var != nil {
		if err = e.Attribute("", "var", *elm.Var); err != nil {
			return err
		}
	}
	if elm.Desc != nil {
		if err = e.SimpleElement(NS, "desc", *elm.Desc); err != nil {
			return err
		}
	}
	if elm.Required {
		if err = e.StartElement(NS, "required"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.Value != nil {
		if err = e.SimpleElement(NS, "value", *elm.Value); err != nil {
			return err
		}
	}
	for _, x := range elm.Option {
		if err = x.Encode(e); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#13
0
func (elm *Option) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "option"); err != nil {
		return err
	}
	if elm.Label != nil {
		if err = e.Attribute("", "label", *elm.Label); err != nil {
			return err
		}
	}
	if elm.Value != nil {
		if err = e.SimpleElement(NS, "value", *elm.Value); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#14
0
func (elm *KEY) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "KEY"); err != nil {
		return err
	}
	if elm.TYPE != nil {
		if err = e.SimpleElement(NS, "TYPE", *elm.TYPE); err != nil {
			return err
		}
	}
	if elm.CRED != nil {
		if err = e.SimpleElement(NS, "CRED", *elm.CRED); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#15
0
func (elm *Time) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "time"); err != nil {
		return err
	}
	if elm.Tz != nil {
		if err = e.SimpleElement(NS, "tz", *elm.Tz); err != nil {
			return err
		}
	}
	if elm.Utc != nil {
		if err = e.SimpleElement(NS, "utc", *elm.Utc); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#16
0
func (elm *ORG) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "ORG"); err != nil {
		return err
	}
	if elm.ORGNAME != nil {
		if err = e.SimpleElement(NS, "ORGNAME", *elm.ORGNAME); err != nil {
			return err
		}
	}
	for _, x := range elm.ORGUNIT {
		if err = e.SimpleElement(NS, "ORGUNIT", x); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#17
0
func (elm *Bind) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "bind"); err != nil {
		return err
	}
	if elm.Resource != nil {
		if err = e.SimpleElement(NS, "resource", *elm.Resource); err != nil {
			return err
		}
	}
	if elm.Jid != nil {
		if err = e.SimpleElement(NS, "jid", elm.Jid.String()); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#18
0
func (elm *X) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "x"); err != nil {
		return err
	}
	if elm.Url != nil {
		if err = e.SimpleElement(NS, "url", *elm.Url); err != nil {
			return err
		}
	}
	if elm.Desc != nil {
		if err = e.SimpleElement(NS, "desc", *elm.Desc); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#19
0
func (elm *GEO) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "GEO"); err != nil {
		return err
	}
	if elm.LAT != nil {
		if err = e.SimpleElement(NS, "LAT", *elm.LAT); err != nil {
			return err
		}
	}
	if elm.LON != nil {
		if err = e.SimpleElement(NS, "LON", *elm.LON); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#20
0
文件: muc_data.go 项目: oxpa/bullxmpp
func (elm *Enter) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "x"); err != nil {
		return err
	}
	if err = e.StartElement(NS, "history"); err != nil {
		return err
	}
	if elm.History.Maxchars != nil {
		if err = e.Attribute("", "maxchars", strconv.FormatInt(int64(*elm.History.Maxchars), 10)); err != nil {
			return err
		}
	}
	if elm.History.Maxstanzas != nil {
		if err = e.Attribute("", "maxstanzas", strconv.FormatInt(int64(*elm.History.Maxstanzas), 10)); err != nil {
			return err
		}
	}
	if elm.History.Seconds != nil {
		if err = e.Attribute("", "seconds", strconv.FormatInt(int64(*elm.History.Seconds), 10)); err != nil {
			return err
		}
	}
	if elm.History.Since != nil {
		if err = e.Attribute("", "since", elm.History.Since.String()); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	if elm.Password != nil {
		if err = e.SimpleElement(NS, "password", *elm.Password); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#21
0
func (elm *Item) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "item"); err != nil {
		return err
	}
	if elm.Approved {
		if err = e.Attribute("", "approved", strconv.FormatBool(elm.Approved)); err != nil {
			return err
		}
	}
	if elm.Ask != nil {
		if err = e.Attribute("", "ask", string(*elm.Ask)); err != nil {
			return err
		}
	}
	if elm.Jid != nil {
		if err = e.Attribute("", "jid", elm.Jid.String()); err != nil {
			return err
		}
	}
	if elm.Name != nil {
		if err = e.Attribute("", "name", *elm.Name); err != nil {
			return err
		}
	}
	if elm.Subscription != nil {
		if err = e.Attribute("", "subscription", string(*elm.Subscription)); err != nil {
			return err
		}
	}
	for _, x := range elm.Group {
		if err = e.SimpleElement(NS, "group", x); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#22
0
func (elm *Version) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "query"); err != nil {
		return err
	}
	if elm.Name != nil {
		if err = e.SimpleElement(NS, "name", *elm.Name); err != nil {
			return err
		}
	}
	if elm.Version != nil {
		if err = e.SimpleElement(NS, "version", *elm.Version); err != nil {
			return err
		}
	}
	if elm.Os != nil {
		if err = e.SimpleElement(NS, "os", *elm.Os); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#23
0
func (elm *Presence) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "presence"); err != nil {
		return err
	}
	if elm.From != nil {
		if err = e.Attribute("", "from", elm.From.String()); err != nil {
			return err
		}
	}
	if elm.To != nil {
		if err = e.Attribute("", "to", elm.To.String()); err != nil {
			return err
		}
	}
	if elm.Id != nil {
		if err = e.Attribute("", "id", *elm.Id); err != nil {
			return err
		}
	}
	if elm.Type != nil {
		if err = e.Attribute("", "type", string(*elm.Type)); err != nil {
			return err
		}
	}
	if elm.Lang != nil {
		if err = e.Attribute("http://www.w3.org/XML/1998/namespace", "lang", string(*elm.Lang)); err != nil {
			return err
		}
	}
	if elm.Show != nil {
		if err = e.SimpleElement(NS, "show", string(*elm.Show)); err != nil {
			return err
		}
	}
	if elm.Status != nil {
		if err = e.SimpleElement(NS, "status", *elm.Status); err != nil {
			return err
		}
	}
	if elm.Priority != nil {
		if err = e.SimpleElement(NS, "priority", strconv.FormatInt(int64(*elm.Priority), 10)); err != nil {
			return err
		}
	}
	for _, x := range elm.X {
		if err = x.(xmlencoder.Extension).Encode(e); err != nil {
			return err
		}
	}
	if elm.Error != nil {
		if err = elm.Error.Encode(e); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#24
0
func (elm *PHOTO) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "PHOTO"); err != nil {
		return err
	}
	if elm.TYPE != nil {
		if err = e.SimpleElement(NS, "TYPE", *elm.TYPE); err != nil {
			return err
		}
	}
	if elm.BINVAL != nil {
		if err = e.SimpleElement(NS, "BINVAL", *elm.BINVAL); err != nil {
			return err
		}
	}
	if elm.EXTVAL != nil {
		if err = e.SimpleElement(NS, "EXTVAL", *elm.EXTVAL); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#25
0
func (elm *Mood) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "mood"); err != nil {
		return err
	}
	if elm.Mood != nil {
		if err = e.StartElement(NS, string(*elm.Mood)); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.Text != nil {
		if err = e.SimpleElement(NS, "text", *elm.Text); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#26
0
func (elm *X) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "x"); err != nil {
		return err
	}
	if elm.Type != nil {
		if err = e.Attribute("", "type", string(*elm.Type)); err != nil {
			return err
		}
	}
	if elm.Title != nil {
		if err = e.SimpleElement(NS, "title", *elm.Title); err != nil {
			return err
		}
	}
	if err = e.StartElement(NS, "reported"); err != nil {
		return err
	}
	for _, x := range elm.Reported {
		if err = x.Encode(e); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	for _, x := range elm.Fields {
		if err = x.(xmlencoder.Extension).Encode(e); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#27
0
func (elm *Action) Encode(e *xmlencoder.Encoder) error {
var err error
if err = e.StartElement(NS, "x"); err != nil { return err }
if elm.Decline != nil {
if err = elm.Decline.Encode(e); err != nil { return err }
}
if elm.Destroy != nil {
if err = elm.Destroy.Encode(e); err != nil { return err }
}
for _, x := range elm.Invite {
if err = x.Encode(e); err != nil { return err} 
}
if elm.Item != nil {
if err = elm.Item.Encode(e); err != nil { return err }
}
if elm.Password != nil {
if err = e.SimpleElement(NS, "password", *elm.Password); err != nil { return err }
}
for _, x := range elm.Status {
if err = x.Encode(e); err != nil { return err} 
}
if err = e.EndElement(); err != nil { return err }
return nil
}
示例#28
0
func (elm *Query) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "query"); err != nil {
		return err
	}
	if elm.Fields.Registered {
		if err = e.StartElement(NS, "registered"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.Fields.Instructions != nil {
		if err = e.SimpleElement(NS, "instructions", *elm.Fields.Instructions); err != nil {
			return err
		}
	}
	if elm.Fields.Username != nil {
		if err = e.SimpleElement(NS, "username", *elm.Fields.Username); err != nil {
			return err
		}
	}
	if elm.Fields.Nick != nil {
		if err = e.SimpleElement(NS, "nick", *elm.Fields.Nick); err != nil {
			return err
		}
	}
	if elm.Fields.Password != nil {
		if err = e.SimpleElement(NS, "password", *elm.Fields.Password); err != nil {
			return err
		}
	}
	if elm.Fields.Name != nil {
		if err = e.SimpleElement(NS, "name", *elm.Fields.Name); err != nil {
			return err
		}
	}
	if elm.Fields.First != nil {
		if err = e.SimpleElement(NS, "first", *elm.Fields.First); err != nil {
			return err
		}
	}
	if elm.Fields.Last != nil {
		if err = e.SimpleElement(NS, "last", *elm.Fields.Last); err != nil {
			return err
		}
	}
	if elm.Fields.Email != nil {
		if err = e.SimpleElement(NS, "email", *elm.Fields.Email); err != nil {
			return err
		}
	}
	if elm.Fields.Address != nil {
		if err = e.SimpleElement(NS, "address", *elm.Fields.Address); err != nil {
			return err
		}
	}
	if elm.Fields.City != nil {
		if err = e.SimpleElement(NS, "city", *elm.Fields.City); err != nil {
			return err
		}
	}
	if elm.Fields.State != nil {
		if err = e.SimpleElement(NS, "state", *elm.Fields.State); err != nil {
			return err
		}
	}
	if elm.Fields.Zip != nil {
		if err = e.SimpleElement(NS, "zip", *elm.Fields.Zip); err != nil {
			return err
		}
	}
	if elm.Fields.Phone != nil {
		if err = e.SimpleElement(NS, "phone", *elm.Fields.Phone); err != nil {
			return err
		}
	}
	if elm.Fields.Url != nil {
		if err = e.SimpleElement(NS, "url", *elm.Fields.Url); err != nil {
			return err
		}
	}
	if elm.Fields.Date != nil {
		if err = e.SimpleElement(NS, "date", *elm.Fields.Date); err != nil {
			return err
		}
	}
	if elm.Fields.Misc != nil {
		if err = e.SimpleElement(NS, "misc", *elm.Fields.Misc); err != nil {
			return err
		}
	}
	if elm.Fields.Text != nil {
		if err = e.SimpleElement(NS, "text", *elm.Fields.Text); err != nil {
			return err
		}
	}
	if elm.Fields.Key != nil {
		if err = e.SimpleElement(NS, "key", *elm.Fields.Key); err != nil {
			return err
		}
	}
	if elm.Remove {
		if err = e.StartElement(NS, "remove"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.Xdata != nil {
		if err = elm.Xdata.Encode(e); err != nil {
			return err
		}
	}
	if elm.Xoob != nil {
		if err = elm.Xoob.Encode(e); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#29
0
func (elm *LABEL) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "LABEL"); err != nil {
		return err
	}
	if elm.HOME {
		if err = e.StartElement(NS, "HOME"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.WORK {
		if err = e.StartElement(NS, "WORK"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.POSTAL {
		if err = e.StartElement(NS, "POSTAL"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.PARCEL {
		if err = e.StartElement(NS, "PARCEL"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.DOMINTL != nil {
		if err = e.StartElement(NS, string(*elm.DOMINTL)); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.PREF {
		if err = e.StartElement(NS, "PREF"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	for _, x := range elm.LINE {
		if err = e.SimpleElement(NS, "LINE", x); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}
示例#30
0
func (elm *TEL) Encode(e *xmlencoder.Encoder) error {
	var err error
	if err = e.StartElement(NS, "TEL"); err != nil {
		return err
	}
	if elm.HOME {
		if err = e.StartElement(NS, "HOME"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.WORK {
		if err = e.StartElement(NS, "WORK"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.VOICE {
		if err = e.StartElement(NS, "VOICE"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.FAX {
		if err = e.StartElement(NS, "FAX"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.PAGER {
		if err = e.StartElement(NS, "PAGER"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.MSG {
		if err = e.StartElement(NS, "MSG"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.CELL {
		if err = e.StartElement(NS, "CELL"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.VIDEO {
		if err = e.StartElement(NS, "VIDEO"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.BBS {
		if err = e.StartElement(NS, "BBS"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.MODEM {
		if err = e.StartElement(NS, "MODEM"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.ISDN {
		if err = e.StartElement(NS, "ISDN"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.PCS {
		if err = e.StartElement(NS, "PCS"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.PREF {
		if err = e.StartElement(NS, "PREF"); err != nil {
			return err
		}
		if err = e.EndElement(); err != nil {
			return err
		}
	}
	if elm.NUMBER != nil {
		if err = e.SimpleElement(NS, "NUMBER", *elm.NUMBER); err != nil {
			return err
		}
	}
	if err = e.EndElement(); err != nil {
		return err
	}
	return nil
}