/** * Copyright (C) 2012 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.livedata.cogda.msg; import org.fudgemsg.FudgeMsg; import org.fudgemsg.MutableFudgeMsg; import org.fudgemsg.mapping.FudgeBuilder; import org.fudgemsg.mapping.FudgeDeserializer; import org.fudgemsg.mapping.FudgeSerializer; /** * */ public class ConnectionRequestBuilder implements FudgeBuilder<ConnectionRequestMessage> { public static MutableFudgeMsg buildMessageStatic(FudgeSerializer serializer, ConnectionRequestMessage request) { MutableFudgeMsg msg = serializer.newMessage(); msg.add("MESSAGE_TYPE", CogdaMessageType.CONNECTION_REQUEST.name()); msg.add("userName", request.getUserName()); if (request.getPassword() != null) { msg.add("password", request.getPassword()); } msg.add("capabilities", request.getCapabilities()); return msg; } @Override public MutableFudgeMsg buildMessage(FudgeSerializer serializer, ConnectionRequestMessage object) { return buildMessageStatic(serializer, object); } public static ConnectionRequestMessage buildObjectStatic(FudgeDeserializer deserializer, FudgeMsg message) { ConnectionRequestMessage request = new ConnectionRequestMessage(); request.setUserName(message.getString("userName")); String passwordFromMessage = message.getString("password"); if (passwordFromMessage != null) { request.setPassword(passwordFromMessage); } request.applyCapabilities(message.getMessage("capabilities")); return request; } @Override public ConnectionRequestMessage buildObject(FudgeDeserializer deserializer, FudgeMsg message) { return buildObjectStatic(deserializer, message); } }