/// /// Copyright (c) 2013-2016 Sensus Metering Systems /// using System; using System.Collections.Generic; using Common; using TBF.Rig.Generic; namespace TBF.Rig.Output.FileWriters.Basic { public class FactoryCompound : IComponentFactory { public string ClassName { get { return this.GetType().Namespace.Substring(8) + ".Compound"; } } public override string ToString() { return ClassName; } public IComponent DummyComponent() { return new Writer(); } public IComponent GetComponent(IComponentCfg cfg, IList components) { return new Writer(cfg); } public IComponentCfg DefaultConfig() { return new WriterCfg("FileWriter.Basic.Compound", this, MetersKind.Combined); } public IComponentCfg CmpntCfgFromCmpntEntity(Config.Entities.Component component) { IComponentCfg cfg = ComponentCfgBase.CreateFromDbEntity(WriterCfg.Serializer, component, this); (cfg as WriterCfg).MetersKind = MetersKind.Combined; return cfg; } } }