示例#1
0
        public CloseImportConnectionResults CloseImportConnection(CloseImportConnectionRunStep importRunStep)
        {
            Tracer.Enter("closeimportconnectionresults");
            try
            {
                CloseRunspace();

                CloseImportConnectionResults cicr = new CloseImportConnectionResults();
                Tracer.TraceInformation("custom-data {0}", importRunStep.CustomData);
                Tracer.TraceInformation("close-reason {0}", importRunStep.Reason);
                if (importRunStep.Reason == CloseReason.Normal)
                {
                    cicr.CustomData = importRunStep.CustomData;
                }
                Dispose();
                return(cicr);
            }
            catch (Exception ex)
            {
                Tracer.TraceError("closeimportconnection", ex);
                throw;
            }
            finally
            {
                Tracer.Exit("closeimportconnectionresults");
            }
        }
示例#2
0
        public CloseImportConnectionResults CloseImportConnectionDetached(CloseImportConnectionRunStep importRunStep)
        {
            Tracer.Enter(nameof(CloseImportConnectionDetached));
            CloseImportConnectionResults result = new CloseImportConnectionResults();

            try
            {
                if (Configuration.RunAfterImport)
                {
                    List <SqlParameter> parameters = new List <SqlParameter>();
                    parameters.Add(new SqlParameter("importtype", ImportType.ToString()));
                    parameters.Add(new SqlParameter("customdata", CustomData));
                    methods.RunStoredProcedure(Configuration.ImportCommandAfter, parameters);
                    parameters.Clear();
                    parameters = null;
                }
                methods.CloseConnection();
                if (importAnchors != null)
                {
                    importAnchors.Clear();
                    importAnchors = null;
                }
                GC.Collect();
            }
            catch (Exception ex)
            {
                Tracer.TraceError(nameof(CloseImportConnectionDetached), ex);
                throw;
            }
            finally
            {
                Tracer.Exit(nameof(CloseImportConnectionDetached));
            }
            return(result);
        }
示例#3
0
        /// <summary>
        /// Closes the import session
        /// </summary>
        /// <param name="importRunStep">The current run step</param>
        /// <returns>Results of the import session close</returns>
        public CloseImportConnectionResults CloseImportConnection(CloseImportConnectionRunStep importRunStep)
        {
            try
            {
                CloseImportConnectionResults results = new CloseImportConnectionResults();

                if (this.importResponse != null)
                {
                    results.CustomData = this.importResponse.Watermark;

                    ImportReleaseRequest request = new ImportReleaseRequest();
                    request.Context           = this.importResponse.Context;
                    request.NormalTermination = importRunStep.Reason == CloseReason.Normal;
                    this.client.ImportEnd(request);
                }

                this.Close();

                Logger.WriteLine("Import Complete");
                Logger.WriteSeparatorLine('*');

                return(results);
            }
            catch (Exception ex)
            {
                Logger.WriteException(ex);
                throw;
            }
        }
示例#4
0
        public CloseImportConnectionResults CloseImportConnection(CloseImportConnectionRunStep importRunStep)
        {
            CloseImportConnectionResults closeImportConnectionResults = new CloseImportConnectionResults();

            closeImportConnectionResults.CustomData = _currentRuntimeStamp;
            return(closeImportConnectionResults);
        }