Ejemplo n.º 1
0
 protected Pattern(Vulcan.Packages.VulcanPackage vulcanPackage,DTS.IDTSSequence parentContainer)
 {
     _vulcanPackage = vulcanPackage;
     _parentContainer = parentContainer;
     _firstExecutableGeneratedByPattern = null;
     _lastExecutableGeneratedByPattern = null;
 }
Ejemplo n.º 2
0
        public FileSystemTask(
            Packages.VulcanPackage vulcanPackage,
            string name,
            string taskDescription,
            DTS.IDTSSequence parentContainer,
            string sourceConnection,
            string destConnection,
            Microsoft.SqlServer.Dts.Tasks.FileSystemTask.DTSFileSystemOperation operation
            )
            :
            base(
                vulcanPackage,
                name,
                taskDescription,
                parentContainer
                )
        {
            Connection source = new Connection(vulcanPackage, sourceConnection, sourceConnection, "FILE", String.Format("\"{0}\"", ExpressionPathBuilder.EscapeBackslashes(sourceConnection)));
            Connection dest   = new Connection(vulcanPackage, destConnection, destConnection, "FILE", String.Format("\"{0}\"", ExpressionPathBuilder.EscapeBackslashes(destConnection)));

            source.SetProperty("FileUsageType", 2);
            dest.SetProperty("FileUsageType", 2);
            fileSystemTask        = (DTS.TaskHost)parentContainer.Executables.Add("STOCK:FileSystemTask");
            fileSystemTask.Name   = name;
            this.Task.Operation   = operation;
            this.Task.Source      = source.ConnectionManager.ID;
            this.Task.Destination = dest.ConnectionManager.ID;
        }
Ejemplo n.º 3
0
 protected Task(Packages.VulcanPackage vulcanPackage, string taskName, string taskDescription, DTS.IDTSSequence parentContainer)
 {
     _vulcanPackage   = vulcanPackage;
     _name            = taskName;
     _description     = taskDescription;
     _parentContainer = parentContainer;
 }
Ejemplo n.º 4
0
Archivo: Task.cs Proyecto: japj/vulcan
 protected Task(Packages.VulcanPackage vulcanPackage ,string taskName, string taskDescription, DTS.IDTSSequence parentContainer)
 {
     _vulcanPackage = vulcanPackage;
     _name = taskName;
     _description = taskDescription;
     _parentContainer = parentContainer;
 }
Ejemplo n.º 5
0
 protected Pattern(Vulcan.Packages.VulcanPackage vulcanPackage, DTS.IDTSSequence parentContainer)
 {
     _vulcanPackage   = vulcanPackage;
     _parentContainer = parentContainer;
     _firstExecutableGeneratedByPattern = null;
     _lastExecutableGeneratedByPattern  = null;
 }
Ejemplo n.º 6
0
 public ETLPattern(Packages.VulcanPackage vulcanPackage, DTS.IDTSSequence parentContainer)
     :
     base(
         vulcanPackage,
         parentContainer
         )
 {
 }
Ejemplo n.º 7
0
 public LogtainerPattern(Vulcan.Packages.VulcanPackage vulcanPackage, DTS.IDTSSequence parentContainer)
     :
     base(
         vulcanPackage,
         parentContainer
         )
 {
 }
Ejemplo n.º 8
0
 public void SetBaseProperties(SSIS.IDTSSequence sequence, SSIS.EventsProvider eventsProvider)
 {
     this.Executables           = sequence.Executables;
     this.PrecedenceConstraints = sequence.PrecedenceConstraints;
     if (eventsProvider != null)
     {
         this.EventHandlers = eventsProvider.EventHandlers;
     }
 }
Ejemplo n.º 9
0
 public SsisSequence(DTS.IDTSSequence dtsSequence, SequenceTask objContainer)
 {
     if (objContainer.ConstraintMode != "Linear" && objContainer.ConstraintMode != "Parallel")
     {
         MessageEngine.Global.Trace(Severity.Error, "Unknown ConstraintMode: {0} ", objContainer.ConstraintMode);
     }
     _constraintMode  = objContainer.ConstraintMode;
     _transactionMode = objContainer.TransactionMode;
     _dtsSequence     = dtsSequence;
 }
Ejemplo n.º 10
0
 public SsisSequence(DTS.IDTSSequence dtsSequence, SequenceTask objContainer)
 {
     if (objContainer.ConstraintMode != "Linear" && objContainer.ConstraintMode != "Parallel")
     {
         MessageEngine.Global.Trace(Severity.Error, "Unknown ConstraintMode: {0} ", objContainer.ConstraintMode);
     }
     _constraintMode = objContainer.ConstraintMode;            
     _transactionMode = objContainer.TransactionMode;
     _dtsSequence = dtsSequence;
 }
Ejemplo n.º 11
0
 internal SSISEmitterContext(SsisPackage package, SsisSequence parentSequence, PluginLoader<ISSISEmitter, PhysicalIRMappingAttribute> pluginLoader)
 {
     _package = package;
     _ssisSequence = parentSequence;
     _guid = Guid.NewGuid();
     _message = MessageEngine.Create(String.Format(System.Globalization.CultureInfo.InvariantCulture, "SSISFactory: {0}", _guid.ToString()));
     if (_ssisSequence != null)
     {
         _parentContainer = _ssisSequence.DTSSequence;
     }
     _pluginLoader = pluginLoader;
 }
Ejemplo n.º 12
0
 internal SSISEmitterContext(SsisPackage package, SsisSequence parentSequence, PluginLoader <ISSISEmitter, PhysicalIRMappingAttribute> pluginLoader)
 {
     _package      = package;
     _ssisSequence = parentSequence;
     _guid         = Guid.NewGuid();
     _message      = MessageEngine.Create(String.Format(System.Globalization.CultureInfo.InvariantCulture, "SSISFactory: {0}", _guid.ToString()));
     if (_ssisSequence != null)
     {
         _parentContainer = _ssisSequence.DTSSequence;
     }
     _pluginLoader = pluginLoader;
 }
Ejemplo n.º 13
0
 public void AddPrecedenceConstraint(DTS.Executable from, DTS.Executable to, DTS.IDTSSequence parentContainer)
 {
     if (from != null && to != null && parentContainer != null)
     {
         if (
             parentContainer.Executables.Contains(this.ExtractNameFromDTSExecutable(from)) &&
             parentContainer.Executables.Contains(this.ExtractNameFromDTSExecutable(to))
             )
         {
             DTS.PrecedenceConstraint pc =
                 parentContainer.PrecedenceConstraints.Add(from, to);
             pc.Name = ExtractNameFromDTSExecutable(from) + "_" + ExtractNameFromDTSExecutable(to);
         }
     }
 }
Ejemplo n.º 14
0
 public DTS.Sequence AddSequenceContainer(string name, DTS.IDTSSequence parentContainer)
 {
     if (name != null && parentContainer != null)
     {
         if (parentContainer.Executables.Contains(name))
         {
             if (parentContainer.Executables[name] is DTS.IDTSSequence)
             {
                 return((DTS.Sequence)parentContainer.Executables[name]);
             }
         }
         DTS.Sequence sequence = (DTS.Sequence)parentContainer.Executables.Add("STOCK:Sequence");
         sequence.Name = name;
         return(sequence);
     }
     return(null);
 }
Ejemplo n.º 15
0
 public ExecutePackageTask(
     Packages.VulcanPackage vulcanPackage,
     string name,
     string taskDescription,
     DTS.IDTSSequence parentContainer,
     Connection packageConnection
     )
     :
     base(
         vulcanPackage,
         name,
         taskDescription,
         parentContainer
         )
 {
     executePackageTaskHost      = (DTS.TaskHost)parentContainer.Executables.Add("STOCK:ExecutePackageTask");
     executePackageTaskHost.Name = name;
     Task.Connection             = packageConnection.ConnectionManager.ID;
 }
Ejemplo n.º 16
0
        public SQLTask(Packages.VulcanPackage package, string name, string description, DTS.IDTSSequence parentContainer, Connection destinationConnection, Dictionary <string, object> propertiesDictionary)
            :
            base(
                package,
                name,
                description,
                parentContainer
                )
        {
            this._expressionBuilder = new Vulcan.Common.Helpers.ExpressionPathBuilder(package);

            _sqlTask             = (DTS.TaskHost)parentContainer.Executables.Add("STOCK:SQLTask");
            _sqlTask.Name        = name;
            _sqlTask.Description = description;

            SetProperties(propertiesDictionary);
            if (destinationConnection != null)
            {
                SetProperty("Connection", destinationConnection.ConnectionManager.Name);
            }
        }
Ejemplo n.º 17
0
 public SQLTask(Packages.VulcanPackage package, string name, string description, DTS.IDTSSequence parentContainer, Connection destinationConnection)
     :
     this(
         package,
         name,
         description,
         parentContainer,
         destinationConnection,
         null
         )
 {
 }
Ejemplo n.º 18
0
        public static Pattern ProcessPattern(Packages.VulcanPackage vulcanPackage, DTS.IDTSSequence parentContainer, XPathNavigator patternNavigator, Pattern previousPattern)
        {
            DTS.Executable lastExecutableInPattern = null;
            if (previousPattern != null)
            {
                lastExecutableInPattern = previousPattern.FirstExecutableGeneratedByPattern;
            }
            Pattern p = null;

            Message.Trace(Severity.Debug, "Emitting Pattern {0}", patternNavigator.Name);

            try
            {
                switch (patternNavigator.Name)
                {
                case "HelperTables":
                    p = new HelperTablePattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "ETL":
                    p = new ETLPattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "StoredProc":
                    p = new StoredProcPattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "Dimensions":
                    p = new DimensionsPattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "Logtainer":
                    p = new LogtainerPattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "LogUpdate":
                    p = new LogUpdatePattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "Container":
                    p = new ContainerPattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "FileSystemTask":
                    p = new FileSystemTaskPattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "ExecuteSQL":
                    p = new ExecuteSQLPattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "FactTable":
                    p = new FactTablePattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "ExecutePackage":
                    p = new ExecutePackagePattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                case "FTPTask":
                    p = new FTPTaskPattern(vulcanPackage, parentContainer);
                    p.Emit(patternNavigator);
                    break;

                default:
                    break;
                }
            }
            catch (System.Runtime.InteropServices.COMException ce)
            {
                Message.Trace(Severity.Error, ce, "Exception in Pattern {0}\n {1}\n", patternNavigator.Name, ce.Message);
            }
            catch (Exception e)
            {
                Message.Trace(Severity.Error, e, "Exception in Pattern {0}\n {1}\n", patternNavigator.Name, e.Message);
            }

            return(p);
        }
Ejemplo n.º 19
0
 public FileSystemTaskPattern(Packages.VulcanPackage vulcanPackage, DTS.IDTSSequence parentContainer)
     :
     base(vulcanPackage, parentContainer)
 {
 }
Ejemplo n.º 20
0
        public FTPTask(
            Packages.VulcanPackage vulcanPackage,
            string name,
            string taskDescription,
            DTS.IDTSSequence parentContainer,
            string serverName,
            string port,
            string userName,
            string password,
            string remotePath,
            bool isRemotePathVariable,
            string localPath,
            bool isLocalPathVariable,
            Microsoft.SqlServer.Dts.Tasks.FtpTask.DTSFTPOp operation
            )
            :
            base(
                vulcanPackage,
                name,
                taskDescription,
                parentContainer
                )
        {
            fTPTask             = (DTS.TaskHost)parentContainer.Executables.Add("STOCK:FTPTask");
            fTPTask.Name        = name;
            fTPTask.Description = taskDescription;
            this.Task.Operation = operation;

            this.Task.IsRemotePathVariable = isRemotePathVariable;
            this.Task.IsLocalPathVariable  = isLocalPathVariable;

            Connection fTPServerConnection = new Connection(vulcanPackage, serverName, serverName, "FTP", String.Format("\"{0}:{1}\"", serverName, port));

            fTPServerConnection.SetProperty("ServerUserName", userName);
            fTPServerConnection.SetProperty("ServerPassword", password);
            this.Task.Connection = fTPServerConnection.ConnectionManager.ID;

            if (this.Task.IsRemotePathVariable == true)
            {
                this.Task.RemotePath = remotePath;
            }
            else
            {
                this.Task.RemotePath = remotePath;
            }

            if (this.Task.IsLocalPathVariable == true)
            {
                this.Task.LocalPath = localPath;
            }
            else
            {
                Connection localConnection  = new Connection(vulcanPackage, localPath, localPath, "File", String.Format("\"{0}\"", ExpressionPathBuilder.EscapeBackslashes(localPath)));
                int        intFileUsageType = 2;
                switch (operation)
                {
                case Microsoft.SqlServer.Dts.Tasks.FtpTask.DTSFTPOp.Send:
                    intFileUsageType = 0;
                    break;

                case Microsoft.SqlServer.Dts.Tasks.FtpTask.DTSFTPOp.Receive:
                    intFileUsageType = 2;
                    break;

                default:
                    intFileUsageType = 2;
                    break;
                }
                localConnection.SetProperty("FileUsageType", intFileUsageType);

                this.Task.LocalPath = localPath;
            }
        }
Ejemplo n.º 21
0
 public PrecedenceConstraint(Packages.VulcanPackage vulcanPackage, string from, string to, DTS.IDTSSequence parentContainer)
     :
     base(
         vulcanPackage,
         from + "_" + to,
         "",
         parentContainer
         )
 {
     this.from = from;
     this.to   = to;
 }
Ejemplo n.º 22
0
 public ContainerPattern(Packages.VulcanPackage vulcanPackage, DTS.IDTSSequence parentContainer)
     :
     base(vulcanPackage, parentContainer)
 {
     _sequenceContainer = null;
 }
Ejemplo n.º 23
0
 public ContainerPattern(Packages.VulcanPackage vulcanPackage, DTS.IDTSSequence parentContainer)
     : base(vulcanPackage,parentContainer)
 {
     _sequenceContainer = null;
 }