public static void main(String[] args) { new MessageBuilder().newTopic("MessageTopic").with(new CustomeMessageHandler()).newQueue("MessageQueue").with(new CustomeMessageHandler()); } public static class MessageBuilder { Map<String, MessageHandler> topics = new HashMap<>(); Map<String, MessageHandler> queue = new HashMap<>(); @SuppressWarnings("rawtypes") List<NamePair<String, Boolean, MessageHandler, MessageBuilder>> list = new ArrayList<>(); public NamePair<String, Boolean, MessageHandler, MessageBuilder> newTopic1(String destination) { // topics.put(destination); NamePair<String, Boolean, MessageHandler, MessageBuilder> pair = new NamePair<>(); pair.setA(destination); pair.setB(true); pair.setD(this); list.add(pair); return pair; } public NamePair<String, Boolean, MessageHandler, MessageBuilder> newQueue1(String destination) { NamePair<String, Boolean, MessageHandler, MessageBuilder> pair = new NamePair<>(); pair.setA(destination); pair.setB(false); pair.setD(this); list.add(pair); return pair; } public MessageBuilder newTopic(String destination) { NamePair<String, Boolean, MessageHandler, MessageBuilder> pair = new NamePair<>(); pair.setA(destination); pair.setB(true); list.add(pair); return this; } public MessageBuilder with(MessageHandler handler) { list.get(list.size() - 1).setC(handler); return this; } public MessageBuilder newQueue(String destination) { NamePair<String, Boolean, MessageHandler, MessageBuilder> pair = new NamePair<>(); pair.setA(destination); pair.setB(false); list.add(pair); return this; } }
Chain
猜你喜欢
转载自jis117.iteye.com/blog/2320150
今日推荐
周排行