diff options
Diffstat (limited to 'src/com/isode/stroke/roster/SetRosterRequest.java')
-rw-r--r-- | src/com/isode/stroke/roster/SetRosterRequest.java | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/com/isode/stroke/roster/SetRosterRequest.java b/src/com/isode/stroke/roster/SetRosterRequest.java new file mode 100644 index 0000000..4d52676 --- /dev/null +++ b/src/com/isode/stroke/roster/SetRosterRequest.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2010-2015, Isode Limited, London, England. + * All rights reserved. + */ +package com.isode.stroke.roster; + +import com.isode.stroke.elements.ErrorPayload; +import com.isode.stroke.elements.IQ; +import com.isode.stroke.elements.Payload; +import com.isode.stroke.elements.RosterPayload; +import com.isode.stroke.jid.JID; +import com.isode.stroke.queries.IQRouter; +import com.isode.stroke.queries.Request; +import com.isode.stroke.signals.Signal1; + +public class SetRosterRequest extends Request { + + static SetRosterRequest create(RosterPayload payload, IQRouter router) { + return new SetRosterRequest(new JID(), payload, router); + } + + static SetRosterRequest create(RosterPayload payload, final JID to, IQRouter router) { + return new SetRosterRequest(to, payload, router); + } + + private SetRosterRequest(final JID to, RosterPayload payload, IQRouter router) { + super(IQ.Type.Set, to, payload, router); + } + + public void handleResponse(Payload payload, ErrorPayload error) { + onResponse.emit(error); + } + + final Signal1<ErrorPayload> onResponse = new Signal1<ErrorPayload>(); + +} |