All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jabber.server.MessageBuilder Maven / Gradle / Ivy

The newest version!
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.2-146 
// See http://java.sun.com/xml/jaxb 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2010.06.09 at 04:26:34 AM BST 
//


package jabber.server;

import java.util.ArrayList;
import java.util.List;
import uk.org.retep.util.builder.Builder;
import uk.org.retep.util.builder.BuilderFactory;
import uk.org.retep.xmpp.JIDBuilder;
import uk.org.retep.xmpp.message.BodyBuilder;
import uk.org.retep.xmpp.message.SubjectBuilder;

public class MessageBuilder
    extends AbstractMessageBuilderImpl
{

    private final List subject = new ArrayList();
    private final List body = new ArrayList();
    private final List> thread = new ArrayList>();
    private uk.org.retep.xmpp.message.ErrorBuilder error;
    private JIDBuilder from;
    private Builder id;
    private JIDBuilder to;
    private Builder type;
    private Builder lang;

    public MessageBuilder() {
    }

    MessageBuilder(final Message o) {
        super(o);
        BuilderFactory.addBuilders(o.getSubject(), subject);
        BuilderFactory.addBuilders(o.getBody(), body);
        BuilderFactory.addBuilders(o.getThread(), thread);
        if (o.getError()!= null) {
            error = o.getError().cloneBuilder();
        }
        if (o.getFrom()!= null) {
            from = o.getFrom().cloneBuilder();
        }
        if (o.getId()!= null) {
            id = BuilderFactory.createBuilder(o.getId());
        }
        if (o.getTo()!= null) {
            to = o.getTo().cloneBuilder();
        }
        if (o.getType()!= null) {
            type = BuilderFactory.createBuilder(o.getType());
        }
        if (o.getLang()!= null) {
            lang = BuilderFactory.createBuilder(o.getLang());
        }
    }

    @Override
    public Message build() {
        resetLastBuild();
        final Message o = new Message();
        build(o);
        BuilderFactory.buildAllIfNeeded(subject, o.getSubject());
        BuilderFactory.buildAllIfNeeded(body, o.getBody());
        BuilderFactory.buildAllIfNeeded(thread, o.getThread());
        o.setError(jabber.server.Error.class.cast(BuilderFactory.buildIfNeeded(error)));
        o.setFrom(BuilderFactory.buildIfNeeded(from));
        o.setId(BuilderFactory.buildIfNeeded(id));
        o.setTo(BuilderFactory.buildIfNeeded(to));
        o.setType(BuilderFactory.buildIfNeeded(type));
        o.setLang(BuilderFactory.buildIfNeeded(lang));
        return setLastBuild(o);
    }

    public final List getSubject() {
        return subject;
    }

    public final MessageBuilder addSubject(final SubjectBuilder subject) {
        resetLastBuild();
        this.subject.add(subject);
        return this;
    }

    public final MessageBuilder addAllSubject(final List subject) {
        resetLastBuild();
        BuilderFactory.addBuilders(subject, this.subject);
        return this;
    }

    public final MessageBuilder clearSubject() {
        resetLastBuild();
        this.subject.clear();
        return this;
    }

    public final List getBody() {
        return body;
    }

    public final MessageBuilder addBody(final BodyBuilder body) {
        resetLastBuild();
        this.body.add(body);
        return this;
    }

    public final MessageBuilder addAllBody(final List body) {
        resetLastBuild();
        BuilderFactory.addBuilders(body, this.body);
        return this;
    }

    public final MessageBuilder clearBody() {
        resetLastBuild();
        this.body.clear();
        return this;
    }

    public final List> getThread() {
        return thread;
    }

    public final MessageBuilder addThread(final Builder thread) {
        resetLastBuild();
        this.thread.add(thread);
        return this;
    }

    public final MessageBuilder addAllThread(final List thread) {
        resetLastBuild();
        BuilderFactory.addBuilders(thread, this.thread);
        return this;
    }

    public final MessageBuilder clearThread() {
        resetLastBuild();
        this.thread.clear();
        return this;
    }

    public final uk.org.retep.xmpp.message.ErrorBuilder getError() {
        return error;
    }

    public final MessageBuilder setError(final uk.org.retep.xmpp.message.ErrorBuilder error) {
        resetLastBuild();
        this.error = error;
        return this;
    }

    public final JIDBuilder getFrom() {
        return from;
    }

    public final MessageBuilder setFrom(final JIDBuilder from) {
        resetLastBuild();
        this.from = from;
        return this;
    }

    public final Builder getId() {
        return id;
    }

    public final MessageBuilder setId(final Builder id) {
        resetLastBuild();
        this.id = id;
        return this;
    }

    public final MessageBuilder setId(final String id) {
        return setId(BuilderFactory.createBuilder(id));
    }

    public final MessageBuilder setId(final String id, Object... args) {
        return setId(BuilderFactory.createFormatBuilder(id, args));
    }

    public final JIDBuilder getTo() {
        return to;
    }

    public final MessageBuilder setTo(final JIDBuilder to) {
        resetLastBuild();
        this.to = to;
        return this;
    }

    public final Builder getType() {
        return type;
    }

    public final MessageBuilder setType(final Builder type) {
        resetLastBuild();
        this.type = type;
        return this;
    }

    public final MessageBuilder setType(final String type) {
        return setType(BuilderFactory.createBuilder(type));
    }

    public final MessageBuilder setType(final String type, Object... args) {
        return setType(BuilderFactory.createFormatBuilder(type, args));
    }

    public final Builder getLang() {
        return lang;
    }

    public final MessageBuilder setLang(final Builder lang) {
        resetLastBuild();
        this.lang = lang;
        return this;
    }

    public final MessageBuilder setLang(final String lang) {
        return setLang(BuilderFactory.createBuilder(lang));
    }

    public final MessageBuilder setLang(final String lang, Object... args) {
        return setLang(BuilderFactory.createFormatBuilder(lang, args));
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy