public static BaseParameterMetadata MapToBase(DBParameterModel parameterMetadata) { BaseParameterMetadata parameterModel = new BaseParameterMetadata { ParameterName = parameterMetadata.Name, TypeMetadata = DBTypeMapper.EmitReferenceDTG(parameterMetadata.TypeMetadata), }; return(parameterModel); }
public static DBParameterModel MapToDB(BaseParameterMetadata parameterMetadata) { DBParameterModel parameterModel = new DBParameterModel { Name = parameterMetadata.ParameterName, TypeMetadata = DBTypeMapper.EmitReferenceDatabase(parameterMetadata.TypeMetadata), }; return(parameterModel); }
public ParameterMetadata MapUp(BaseParameterMetadata model) { ParameterMetadata parameterModel = new ParameterMetadata(); parameterModel.Name = model.Name; Type type = model.GetType(); PropertyInfo typeProperty = type.GetProperty("Type", BindingFlags.Instance | BindingFlags.Public | BindingFlags.DeclaredOnly); BaseTypeMetadata typeModel = (BaseTypeMetadata)typeProperty?.GetValue(model); if (typeModel != null) parameterModel.Type = TypeModelMapper.EmitType(typeModel); return parameterModel; }
public BaseMethodMetadata MapUp() { BaseMethodMetadata MethodMetadataDTO = new BaseMethodMetadata(); MethodMetadataDTO.MethodName = m_Name; if (m_GenericArguments != null) { List <BaseTypeMetadata> GenericArgumentsDTO = new List <BaseTypeMetadata>(); foreach (TypeMetadata metadata in m_GenericArguments) { BaseTypeMetadata baseTypeMetadata; if (BaseTypeMetadata.TypeDictionary.ContainsKey(metadata.m_typeName)) { baseTypeMetadata = BaseTypeMetadata.TypeDictionary[metadata.m_typeName]; } else { baseTypeMetadata = metadata.MapUp(); } GenericArgumentsDTO.Add(baseTypeMetadata); } MethodMetadataDTO.GenericArguments = GenericArgumentsDTO; } MethodMetadataDTO.Modifiers = new Tuple <AccessLevel, AbstractEnum, StaticEnum, VirtualEnum>(m_Modifiers.Item1, m_Modifiers.Item2, m_Modifiers.Item3, m_Modifiers.Item4); if (m_ReturnType != null) { if (BaseTypeMetadata.TypeDictionary.ContainsKey(m_ReturnType.m_typeName)) { MethodMetadataDTO.ReturnType = BaseTypeMetadata.TypeDictionary[m_ReturnType.m_typeName]; } else { MethodMetadataDTO.ReturnType = m_ReturnType.MapUp(); } } MethodMetadataDTO.Extension = m_Extension; if (m_Parameters != null) { List <BaseParameterMetadata> ParameterDTO = new List <BaseParameterMetadata>(); foreach (ParameterMetadata metadata in m_Parameters) { BaseParameterMetadata baseParameterMetadata = metadata.MapUp(); ParameterDTO.Add(baseParameterMetadata); } MethodMetadataDTO.Parameters = ParameterDTO; } return(MethodMetadataDTO); }
public ParameterMetadata(BaseParameterMetadata parameterMetadata) { m_Name = parameterMetadata.ParameterName; if (parameterMetadata.TypeMetadata != null) { if (TypeMetadata.m_typesMetadata.ContainsKey(parameterMetadata.TypeMetadata.TypeName)) { m_TypeMetadata = TypeMetadata.m_typesMetadata[parameterMetadata.TypeMetadata.TypeName]; } else { m_TypeMetadata = new TypeMetadata(parameterMetadata.TypeMetadata); } } }
public BaseParameterMetadata MapUp() { BaseParameterMetadata ParameterMetadataDTO = new BaseParameterMetadata(); ParameterMetadataDTO.ParameterName = m_Name; if (m_TypeMetadata != null) { if (BaseTypeMetadata.TypeDictionary.ContainsKey(m_TypeMetadata.m_typeName)) { ParameterMetadataDTO.TypeMetadata = BaseTypeMetadata.TypeDictionary[m_TypeMetadata.m_typeName]; } else { ParameterMetadataDTO.TypeMetadata = m_TypeMetadata.MapUp(); } } return(ParameterMetadataDTO); }
public XMLParameterModel(BaseParameterMetadata baseParameter) { ParameterName = baseParameter.ParameterName; TypeMetadata = XMLTypeModel.GetOrAdd(baseParameter.TypeMetadata); }