| @@ -0,0 +1,33 @@ | |||||
| package chanjarster.weixin.bean.outxmlbuilder; | |||||
| import chanjarster.weixin.bean.WxXmlOutMessage; | |||||
| public abstract class BaseBuilder<BuilderType, ValueType> { | |||||
| protected String toUserName; | |||||
| protected String fromUserName; | |||||
| protected String msgtype; | |||||
| public BuilderType touser(String touser) { | |||||
| this.toUserName = touser; | |||||
| return (BuilderType) this; | |||||
| } | |||||
| public BuilderType fromUser(String fromusername) { | |||||
| this.fromUserName = fromusername; | |||||
| return (BuilderType) this; | |||||
| } | |||||
| public abstract ValueType build(); | |||||
| public void setCommon(WxXmlOutMessage m) { | |||||
| m.setToUserName(this.toUserName); | |||||
| m.setFromUserName(this.fromUserName); | |||||
| m.setMsgType(this.msgtype); | |||||
| m.setCreateTime(System.currentTimeMillis() / 1000l); | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,33 @@ | |||||
| package chanjarster.weixin.bean.outxmlbuilder; | |||||
| import chanjarster.weixin.api.WxConsts; | |||||
| import chanjarster.weixin.bean.WxXmlOutImageMessage; | |||||
| /** | |||||
| * 获得消息builder | |||||
| * <pre> | |||||
| * 用法: WxXmlMessage m = WxXmlMessage.IMAGE().media_id(...).touser(...).build(); | |||||
| * </pre> | |||||
| * @author chanjarster | |||||
| * | |||||
| */ | |||||
| public final class ImageBuilder extends BaseBuilder<ImageBuilder, WxXmlOutImageMessage> { | |||||
| private String media_id; | |||||
| public ImageBuilder() { | |||||
| this.msgtype = WxConsts.XML_MSG_IMAGE; | |||||
| } | |||||
| public ImageBuilder media_id(String media_id) { | |||||
| this.media_id = media_id; | |||||
| return this; | |||||
| } | |||||
| public WxXmlOutImageMessage build() { | |||||
| WxXmlOutImageMessage m = new WxXmlOutImageMessage(); | |||||
| setCommon(m); | |||||
| m.setMediaId(this.media_id); | |||||
| return m; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,32 @@ | |||||
| package chanjarster.weixin.bean.outxmlbuilder; | |||||
| import chanjarster.weixin.api.WxConsts; | |||||
| import chanjarster.weixin.bean.WxXmlOutTextMessage; | |||||
| /** | |||||
| * 文本消息builder | |||||
| * <pre> | |||||
| * 用法: WxXmlMessage m = WxXmlMessage.TEXT().touser(...).fromUser(...).content(...).build(); | |||||
| * </pre> | |||||
| * @author chanjarster | |||||
| * | |||||
| */ | |||||
| public final class TextBuilder extends BaseBuilder<TextBuilder, WxXmlOutTextMessage> { | |||||
| private String content; | |||||
| public TextBuilder() { | |||||
| this.msgtype = WxConsts.XML_MSG_TEXT; | |||||
| } | |||||
| public TextBuilder content(String content) { | |||||
| this.content = content; | |||||
| return this; | |||||
| } | |||||
| public WxXmlOutTextMessage build() { | |||||
| WxXmlOutTextMessage m = new WxXmlOutTextMessage(); | |||||
| setCommon(m); | |||||
| m.setContent(this.content); | |||||
| return m; | |||||
| } | |||||
| } | |||||