예제 #1
0
        public virtual string FormatCompoundElement(ICompoundElement element)
        {
            TextBuilder builder = new TextBuilder(Template);

            if (Template.Contains(Constants.TemplateField_ElTypeName))
                builder.Replace(Constants.TemplateField_ElTypeName, element.TypeName);
            if (Template.Contains(Constants.TemplateField_ElId))
                builder.Replace(Constants.TemplateField_ElId, element.Id);
            if (Template.Contains(Constants.TemplateField_ParentId))
                builder.Replace(Constants.TemplateField_ParentId, element.ParentId);
            if (Template.Contains(Constants.TemplateField_ElStatus))
                builder.Replace(Constants.TemplateField_ElStatus, element.Status);
            if (Template.Contains(Constants.TemplateField_Params))
            {
                IParamMgrTextFormatter formatter = TextFormatterFactory.CreateParamMgrFormatter();
                builder.Replace(Constants.TemplateField_Params, formatter.Format(element.ParamMgr));
            }
            if (Template.Contains(Constants.TemplateField_Inputs))
            {
                IInputPortMgrTextFormatter formatter = TextFormatterFactory.CreateInputPortMgrFormatter();
                builder.Replace(Constants.TemplateField_Inputs, formatter.Format(element.InPortMgr));
            }
            if (Template.Contains(Constants.TemplateField_Outputs))
            {
                IOutputPortMgrTextFormatter formatter = TextFormatterFactory.CreateOutputPortMgrFormatter();
                builder.Replace(Constants.TemplateField_Outputs, formatter.Format(element.OutPortMgr));
            }
            if (Template.Contains(Constants.TemplateField_Settings))
            {
                ISettingsMgrTextFormatter formatter = TextFormatterFactory.CreateSettingsMgrFormatter();
                builder.Replace(Constants.TemplateField_Settings, formatter.Format(element.SettingsMgr));
            }
            if (Template.Contains(Constants.TemplateField_Options))
            {
                IOptionsMgrTextFormatter formatter = TextFormatterFactory.CreateOptionsMgrFormatter();
                builder.Replace(Constants.TemplateField_Options, formatter.Format(element.OptionsMgr));
            }
            return builder.ToString();
        }