コード例 #1
0
 public Transformation(IInputSource input, IOutputSource output, List <IRowTransformer> rowTransformers)
     : base()
 {
     Input           = input;
     Output          = output;
     RowTransformers = rowTransformers;
 }
コード例 #2
0
 public Transformation(IInputSource input, IOutputSource output, List <ITransformer> transformers)
     : base()
 {
     Input        = input;
     Output       = output;
     Transformers = transformers;
 }
コード例 #3
0
        static IOutputSource CreateSource(OutputSourceTypes type)
        {
            IOutputSource source = null;

            switch (type)
            {
            case OutputSourceTypes.Console:
                source = new OutputSourceConsole();
                break;

            case OutputSourceTypes.CustomLogger:
                source = new OutputSourceCustomLogger();
                break;

            case OutputSourceTypes.Database:
                source = new OutputSourceDatabase();
                break;

            case OutputSourceTypes.EventViewer:
                source = new OutputSourceEventViewer();
                break;

            case OutputSourceTypes.None:
                break;
            }

            return(source);
        }
コード例 #4
0
 public Transformation(IInputSource input, IOutputSource output)
     : base()
 {
     Input           = input;
     Output          = output;
     Transformers    = new List <ITransformer>();
     RowTransformers = new List <IRowTransformer>();
 }
コード例 #5
0
        static void Main(string[] args)
        {
            if (args.Length == 0)
            {
                Console.WriteLine("Provide input and output file");
                Usage();
                return;
            }
            string        input = null, output = null;
            IInputSource  fileInput = null;
            IOutputSource fileOut   = null;

            foreach (string arg in args)
            {
                switch (arg.Substring(0, 2).ToUpper())
                {
                case "-I":
                    // process argument...
                    input     = arg.Substring(3);
                    fileInput = new InputFile(input);
                    break;

                case "-O":
                    // process arg...
                    output  = arg.Substring(3);
                    fileOut = new OutputFile(output);
                    break;
                }
            }
            if (fileInput == null)
            {
                Console.WriteLine("No input file provided");
                Usage();
                return;
            }
            if (fileOut == null)
            {
                Console.WriteLine("No output file provided");
                Usage();
                return;
            }


            try {
                var register = new Register(fileInput, fileOut);
                Console.WriteLine("Processing... {0}", input);
                var totalProcess = register.Process();
                Console.WriteLine("Total Transactions: {0}", totalProcess);
                Console.WriteLine("Saved to...{0}", output);
            }
            catch (Exception ex) {
                Console.WriteLine(ex);
            }
        }
コード例 #6
0
        internal T ExecuteHelper <T>(IOutputSource src, Dictionary <string, PropertyInfo> attrDictionary) where T : class, new()
        {
            var obj = Activator.CreateInstance <T>();

            foreach (var entry in attrDictionary)
            {
                var type = entry.Value.PropertyType;
                entry.Value.SetValue(obj, ChangeType(src[entry.Key], type));
            }
            return(obj);
        }
コード例 #7
0
ファイル: Register.cs プロジェクト: aurlaw/CashRegister
 public Register(IInputSource inputSource, IOutputSource outputSource)
 {
     if (inputSource == null)
     {
         throw new ArgumentNullException("inputSource");
     }
     if (outputSource == null)
     {
         throw new ArgumentNullException("outputSource");
     }
     _input  = inputSource;
     _output = outputSource;
 }
コード例 #8
0
 static ErrorLogger()
 {
     _outputSourceType =
         $"{ConfigurationManager.AppSettings["errorOutputSource"] ?? OutputSourceTypes.CustomLogger.ToString()}";
     _errorOutputSource = OutputSourceFactory.CreateSource(_outputSourceType);
 }
コード例 #9
0
 public TransformationBuilder SetOutput(IOutputSource output)
 {
     _output = output;
     return(this);
 }