ATML1671Translator.translator.TranslationLibrary.TranslationLibrary C# (CSharp) Method

TranslationLibrary() public method

public TranslationLibrary ( ) : System
return System
        public TranslationLibrary()
        {
            var signalMappingDao = new SignalMappingDAO();
            _signalMap = new Dictionary<string, Dictionary<object, SignalMappingNounModifier>>();
            _sourceSignalMap = new Dictionary<string, SourceSignalMapBean>();

            List<SourceSignalMapBean> signals = signalMappingDao.GetSourceSignals("ATLAS");
            foreach (var sourceSignalMapBean in signals)
            {
                if (!_sourceSignalMap.ContainsKey(sourceSignalMapBean.sourceName))
                    _sourceSignalMap.Add(sourceSignalMapBean.sourceName, sourceSignalMapBean);
                if( !_signalMap.ContainsKey( sourceSignalMapBean.sourceName ) )
                    _signalMap.Add(sourceSignalMapBean.sourceName, new Dictionary<object, SignalMappingNounModifier>());
                Dictionary<object, SignalMappingNounModifier> attributeMap = _signalMap[sourceSignalMapBean.sourceName];
                List<SourceSignalAttributeMapBean> attributes = signalMappingDao.GetSignalAttributes(sourceSignalMapBean.id);
                foreach (var attribute in attributes)
                {
                    if (!attributeMap.ContainsKey( attribute.sourceName ))
                    {
                        var smnm = new SignalMappingNounModifier();
                        smnm.Name = attribute.sourceName;
                        smnm.Attribute = string.IsNullOrEmpty(attribute.targetName) ? attribute.sourceName + "->[UNKNOWN]" : attribute.targetName;
                        smnm.Default = attribute.targetDefault;
                        smnm.Type = attribute.targetType;
                        smnm.Suffix = attribute.sourceSuffix;
                        smnm.Qualifier = attribute.targetQualifier;
                        attributeMap.Add(smnm.Name, smnm);
                    }
                }
            }
        }