/** * Copyright (C) 2009 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.financial.fudgemsg; import org.fudgemsg.types.FudgeSecondaryType; import org.fudgemsg.types.SecondaryFieldType; import org.fudgemsg.wire.types.FudgeWireType; import com.opengamma.financial.convention.businessday.BusinessDayConvention; import com.opengamma.financial.convention.businessday.BusinessDayConventionFactory; /** * Converts BusinessDayConvention instances to/from a Fudge string type. */ public final class BusinessDayConventionFudgeSecondaryType extends SecondaryFieldType<BusinessDayConvention, String> { /** Serialization version. */ private static final long serialVersionUID = 1L; /** * Singleton instance of the type. */ @FudgeSecondaryType public static final BusinessDayConventionFudgeSecondaryType INSTANCE = new BusinessDayConventionFudgeSecondaryType(); private BusinessDayConventionFudgeSecondaryType() { super(FudgeWireType.STRING, BusinessDayConvention.class); } @Override public String secondaryToPrimary(BusinessDayConvention object) { return object.getName(); } @Override public BusinessDayConvention primaryToSecondary(final String string) { return BusinessDayConventionFactory.of(string); } }