Exemple #1
0
 public FilterRetainColumnDataContains(CtorDictionary dataNeeded) : base(
         new CtorDictionary(dataNeeded)
         .AddMyValue(nameof(Expression), $"not({dataNeeded[nameof(nameColumn)]} like '%{dataNeeded[nameof(stringToHave)]}%')")
         )
 {
     this.Name = nameof(FilterRetainColumnDataContains);
 }
 public SenderOutputToFolder(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     FolderToSave    = GetMyDataOrDefault <string>(nameof(FolderToSave), Environment.CurrentDirectory);
     NameTableOutput = GetMyDataOrThrow <string>(nameof(NameTableOutput));
     addKey          = GetMyDataOrDefault <bool>(nameof(addKey), true);
     Name            = nameof(SenderOutputToFolder);
 }
Exemple #3
0
 public ReceiverXML(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.Name = nameof(ReceiverXML);
     File      = GetMyDataOrThrow <string>(nameof(File));
     Encoding  = GetMyDataOrDefault <Encoding>(nameof(Encoding), Encoding.UTF8);
     XPath     = GetMyDataOrThrow <string>(nameof(XPath));
 }
Exemple #4
0
 public ReceiverFilesInFolder(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.Name    = nameof(ReceiverFilesInFolder);
     PathFolder   = GetMyDataOrThrow <string>(nameof(PathFolder));
     Filter       = GetMyDataOrDefault <string>(nameof(Filter), "*.*");
     SearchOption = GetMyDataOrThrow <SearchOption>(nameof(SearchOption));
 }
 public TransformSplitColumnAddRow(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.nameTable  = base.GetMyDataOrThrow <string>(nameof(nameTable));
     this.nameColumn = base.GetMyDataOrThrow <string>(nameof(nameColumn));
     this.separators = base.GetMyDataOrThrow <string[]>(nameof(separators));
     Name            = nameof(TransformSplitColumn);
 }
 public ReceiveMetadataFromDatabasePostGresSql(CtorDictionary dataNeeded) : base(new CtorDictionary(dataNeeded)
                                                                                 .AddMyValue(
                                                                                     nameof(connectionType), typeof(NpgsqlConnection).AssemblyQualifiedName)
                                                                                 )
 {
     this.Name = nameof(ReceiveMetadataFromDatabasePostGresSql);
 }
 public TransformerXMLToColumn(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.ColumnName    = base.GetMyDataOrThrow <string>(nameof(ColumnName));
     this.XPath         = base.GetMyDataOrThrow <string>(nameof(XPath));
     this.NewColumnName = base.GetMyDataOrThrow <string>(nameof(NewColumnName));
     this.Separator     = base.GetMyDataOrDefault <string>(nameof(Separator), ",");
 }
Exemple #8
0
 public BaseObjectData(Type t, CtorDictionary data)
 {
     this.Type = t;
     if (data != null)
     {
         this.dataNeeded = new CtorDictionary(data);
     }
 }
Exemple #9
0
 //TODO: maybe reflection to get properties values from dataNeeded?
 public BaseObject(CtorDictionary dataNeeded)
 {
     Version = new Version(1, 0, 0, 0);
     //TODO: read this from somewhere
     StoringDataBetweenCalls = new Dictionary <string, object>();
     this.dataNeeded         = dataNeeded;
     //this.Name = this.GetType().Name;
 }
Exemple #10
0
 public SenderWindowsLiveWriter(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     FolderPath      = base.GetMyDataOrDefault <string>(nameof(FolderPath), Environment.CurrentDirectory);
     SeparatorColumn = base.GetMyDataOrDefault <string>(nameof(SeparatorColumn), ",");
     SeparatorRow    = base.GetMyDataOrDefault <string>(nameof(SeparatorRow), Environment.NewLine);
     First           = base.GetMyDataOrDefault <string>(nameof(First), "");
     Last            = base.GetMyDataOrDefault <string>(nameof(Last), "");
 }
 public ReceiveQueryFromDatabaseSql(CtorDictionary dict) : base(
         new CtorDictionary(dict)
         .AddMyValue(
             nameof(connectionType), typeof(SqlConnection).AssemblyQualifiedName)
         )
 {
     Name = nameof(ReceiveQueryFromDatabaseSql);
 }
Exemple #12
0
        public FilterRemoveColumnDataLessThan(CtorDictionary dataNeeded) : base(
                new CtorDictionary(dataNeeded).AddMyValue(
                    nameof(Expression), $"{dataNeeded[nameof(nameColumn)]}<{dataNeeded[nameof(value)]}")

                )

        {
            this.Name = nameof(FilterRemoveColumnDataLessThan);
        }
Exemple #13
0
 public TransformerToOneTableHierarchical(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.nameTable1      = GetMyDataOrThrow <string>(nameof(nameTable1));
     this.field1          = GetMyDataOrThrow <string>(nameof(field1));
     this.nameTable2      = GetMyDataOrThrow <string>(nameof(nameTable2));
     this.field2          = GetMyDataOrThrow <string>(nameof(field2));
     this.nameTableResult = GetMyDataOrThrow <string>(nameof(nameTableResult));
     this.Name            = nameof(TransformerToOneTableHierarchical);
 }
 public ReceiveTableDatabaseSql(CtorDictionary dict) : base(
         new CtorDictionary(dict).AddMyValue(nameof(sql),
                                             dict.ContainsKey(nameof(nameTable))?
                                             $"select * from {dict[nameof(nameTable)]}":
                                             throw new ArgumentException($"missing {nameof(nameTable)}", nameof(nameTable))))
 {
     Name = nameof(ReceiveTableDatabaseSql);
     // this.nameTable=GetMyDataOrThrow<string>(nameTable);
 }
Exemple #15
0
        public FilterRemoveColumnDataGreaterThan(CtorDictionary dataNeeded) : base(
                new CtorDictionary(dataNeeded) {
            { nameof(Expression), $"{dataNeeded[nameof(nameColumn)]}>{dataNeeded[nameof(value)]}" }
        }
                )

        {
            this.Name = nameof(FilterRemoveColumnDataGreaterThan);
        }
 public RecipeFromFilePath(CtorDictionary dataNeeded) : base(dataNeeded
                                                             .AddMyValue("nameTable", "FileContents")
                                                             .AddMyValue("nameColumn", "FileContents")
                                                             .AddMyValue("receiverProperty", "content")
                                                             .AddMyValue("columnNameWithData", "FileContents")
                                                             )
 {
     Name          = nameof(RecipeFromFilePath);
     this.fileName = GetMyDataOrThrow <string>(nameof(fileName));
 }
Exemple #17
0
        public ReceiverWeb(CtorDictionary dict) : base(dict)
        {
            URL    = GetMyDataOrThrow <string>(nameof(URL));
            Method = GetMyDataOrDefault <string>(nameof(Method), "GET");
            if (string.IsNullOrWhiteSpace(Method))
            {
                Method = "GET";
            }

            Name = nameof(ReceiverWeb);
        }
 public TransformerOneTableToMulti(string receiverProperty,
                                   string columnNameWithData,
                                   string[] tableWithModel,
                                   CtorDictionary dataNeeded) :
     this(new CtorDictionary(dataNeeded)
 {
     { nameof(receiverProperty), receiverProperty },
     { nameof(columnNameWithData), columnNameWithData },
     { nameof(tableWithModel), tableWithModel }
 })
 {
 }
Exemple #19
0
        public ResultTypeStankins FromType(Type type)
        {
            CtorDictionary ctor = TryToConstruct(type);

            if (ctor == null)
            {
                return(null);
            }



            return(new ResultTypeStankins(type, ctor));
        }
 public ReceiveQueryFromFileSql(CtorDictionary dataNeeded) : base(dataNeeded
                                                                  .AddMyValue("nameTable", "FileContents")
                                                                  .AddMyValue("nameColumn", "FileContents")
                                                                  .AddMyValue("separators", new string[] { "\r\nGO\r\n", "\nGO\n", "\r\nGO \r\n", "\nGO \n" })
                                                                  .AddMyValue("receiverProperty", "sql")
                                                                  .AddMyValue("columnNameWithData", "FileContents")
                                                                  .AddMyValue("connectionType", typeof(SqlConnection).AssemblyQualifiedName)
                                                                  )
 {
     Name                  = nameof(ReceiveQueryFromFileSql);
     this.fileName         = GetMyDataOrThrow <string>(nameof(fileName));
     this.connectionString = GetMyDataOrThrow <string>(nameof(connectionString));
 }
        private IBaseObject TryToConstruct(Type t)
        {
            var c = new CtorDictionary();

            while (true)
            {
                try
                {
                    var res = Activator.CreateInstance(t, c);
                    return(res as IBaseObject);
                }
                catch (TargetInvocationException tex)
                {
                    var lenArgs = c.Count;
                    var ex      = tex.InnerException as ArgumentException;
                    if (ex == null)
                    {
                        throw new Exception($"for {t.Name} tex.InnerException is {tex.InnerException} ");
                    }
                    var name = ex.ParamName;
                    if (c.ContainsKey(name))
                    {
                        throw new Exception($"type {t} has {name} twice");
                    }
                    foreach (var ctor in t.GetConstructors())
                    {
                        var par = ctor.GetParameters().FirstOrDefault(p => p.Name.Equals(name, StringComparison.InvariantCultureIgnoreCase));
                        if (par == null)
                        {
                            continue;
                        }
                        var def = GetDefault(par.ParameterType);
                        if (c.ContainsKey(name))
                        {
                            throw new Exception($"type {t} has {name} twice");
                        }
                        c.Add(name, def);
                        break;
                    }
                    if (c.Count != lenArgs)
                    {
                        continue;
                    }
                    else
                    {
                        break;
                    }
                }
            }
            return(null);
        }
Exemple #22
0
        public SenderToRazor(CtorDictionary dataNeeded) : base(dataNeeded)
        {
            this.InputTemplate = base.GetMyDataOrDefault <string>(nameof(InputTemplate), null);

            if (string.IsNullOrWhiteSpace(this.InputTemplate))
            {
                this.InputTemplate = DefaultText();
            }
            else
            {
                var f = base.FullFileNameFromPath(InputTemplate);
                if (f != null)
                {
                    this.InputTemplate = base.ReadFile(f);
                }
            }

            this.Name = nameof(SenderToRazor);
        }
Exemple #23
0
 public ReceiveQueryFromFolderSql(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.Name = nameof(ReceiveQueryFromFolderSql);
 }
Exemple #24
0
 public TransformerRenameLastTable(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     newNameTable = GetMyDataOrThrow <string>(nameof(newNameTable));
 }
 public FilterRemoveColumnDataGreaterThanLength(CtorDictionary dataNeeded) : base(dataNeeded)
 {
 }
 public SenderToRazorWithContents(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.Name = nameof(SenderToRazorWithContents);
 }
 public TransformerUpdateColumn(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.nameColumn = GetMyDataOrThrow <string>(nameof(nameColumn));
     this.nameTable  = GetMyDataOrThrow <string>(nameof(nameTable));
     Name            = nameof(TransformerUpdateColumn);
 }
 public TransformerOutputStringColumnName(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     Name = nameof(TransformerOutputStringColumnName);
 }
Exemple #29
0
 public ReceiverHtmlAHref(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.Name = nameof(ReceiverHtmlTables);
     File      = GetMyDataOrThrow <string>(nameof(File));
     Encoding  = GetMyDataOrDefault <Encoding>(nameof(Encoding), Encoding.UTF8);
 }
Exemple #30
0
 public TransformerHtmlAHref(CtorDictionary dataNeeded) : base(dataNeeded)
 {
     this.Name = nameof(TransformerHtmlAHref);
     Content   = GetMyDataOrThrow <string>(nameof(Content));
 }