Beispiel #1
0
 /// <summary>
 ///   Delete a <see cref="JobType"/> object passed as an argument.
 /// </summary>
 /// <param name="aJobType">The <see cref="JobType"/> object to be deleted.</param>
 /// <exception cref="ArgumentNullException">If <c>aJobType</c> argument is <c>null</c>.</exception>
 public static void Delete(JobType aJobType)
 {
     if (aJobType == null)
     {
         throw new ArgumentNullException("aJobType");
     }
     using (var vSqlCommand = new SqlCommand()
     {
         CommandType = CommandType.Text,
         Connection = new SqlConnection(Connection.Instance.SqlConnectionString)
     })
     {
         var vStringBuilder = new StringBuilder();
         vStringBuilder.AppendLine("delete JBT_JobType");
         vStringBuilder.AppendLine("where  JBT_Key = @JBTKey");
         vSqlCommand.Parameters.AddWithValue("@JBTKey", aJobType.JbtKey);
         vSqlCommand.CommandText = vStringBuilder.ToString();
         try
         {
             vSqlCommand.Connection.Open();
             vSqlCommand.ExecuteNonQuery();
             vSqlCommand.Connection.Close();
         }
         catch (SqlException sx)
         {
             if (sx.Class == 16)
             {
                 TransactionStatus vTransactionStatus = new TransactionStatus();
                 vTransactionStatus.TransactionResult = TransactionResult.SqlException;
                 vTransactionStatus.SourceAssembly = SourceAssembly.Data;
                 vTransactionStatus.Message = "One does not simply delete this item...";
                 vTransactionStatus.InnerMessage = "In order to delete this item please ensure all its dependancies are deleted first.";
                 TransactionStatusException vX = new TransactionStatusException(vTransactionStatus);
                 throw vX;
             }
             else
             {
                 throw sx;
             }
         }
     }
 }
Beispiel #2
0
        /// <summary>
        /// Assigns the fields and properties of aSource to this instance.
        /// </summary>
        /// <param name="aSource">A source TransactionStatus.</param>
        public void AssignFromSource(TransactionStatus aSource)
        {
            if (aSource == null) { return; }

            _transactionResult = aSource._transactionResult;
            _sourceAssembly = aSource._sourceAssembly;
            _targetUrl = aSource._targetUrl;
            _message = aSource._message;
            _innerMessage = aSource._innerMessage;
            aSource._messagePairList.ForEach(vSourceMessagePair =>
            {
                var vTargetMessagePair = new MessagePair(vSourceMessagePair.Message, vSourceMessagePair.Subject);
                _messagePairList.Add(vTargetMessagePair);
            });
        }
Beispiel #3
0
        // Return a TransactionStatus
        private static string TransactionException(Exception aException)
        {
            var vTransactionStatus = new TransactionStatus();
            try
            {
                StringBuilder vMessageStack = new StringBuilder();
                int vMessageCount = 0;
                vMessageStack.AppendFormat("{0} - {1}", ++vMessageCount, aException.Message).AppendLine();
                var vException = aException.InnerException;
                while (vException != null)
                {
                    vMessageStack.AppendFormat("{0} - {1}", ++vMessageCount, vException.Message).AppendLine();
                    vException = vException.InnerException;
                }

                vTransactionStatus.TransactionResult = TransactionResult.GeneralException;
                vTransactionStatus.Message = vMessageStack.ToString();
                vTransactionStatus.SourceAssembly = SourceAssembly.Services;
                if (vException != null)
                {
                    vTransactionStatus.InnerMessage = vException.StackTrace;
                }
                return XmlUtils.Serialize<TransactionStatus>(vTransactionStatus, true);
            }
            catch (Exception ex)
            {
                string vMessage = string.Format("TransactionException Handler blew with message \"{0}\", original exception was \"{1}\"", ex.Message, aException.Message);
                vTransactionStatus.TransactionResult = TransactionResult.GeneralException;
                vTransactionStatus.Message = vMessage;
                vTransactionStatus.SourceAssembly = SourceAssembly.Services;
                vTransactionStatus.InnerMessage = String.Empty;
                return XmlUtils.Serialize<TransactionStatus>(vTransactionStatus, true);
            }
        }
Beispiel #4
0
 // Build Access Exception Status document
 private static string TransactionAccessException(ZpAccessException aAccessException)
 {
     var vTransactionStatus = new TransactionStatus
     {
         TransactionResult = TransactionResult.AccessException,
         Message = aAccessException.Message,
         SourceAssembly = SourceAssembly.Business
     };
     return XmlUtils.Serialize<TransactionStatus>(vTransactionStatus, true);
 }
Beispiel #5
0
 // Build Success Status document
 private static string TransactionSuccess()
 {
     var vTransactionStatus = new TransactionStatus
     {
         TransactionResult = TransactionResult.OK,
         Message = "Success",
         SourceAssembly = SourceAssembly.Services
     };
     return XmlUtils.Serialize<TransactionStatus>(vTransactionStatus, true);
 }
 /// <summary>
 ///   Initializes a new instance of the <see cref="TransactionStatusException"/> class.
 /// </summary>
 /// <param name="aTransactionStatus">A transaction status.</param>
 public TransactionStatusException(TransactionStatus aTransactionStatus)
 {
     _transactionStatus.AssignFromSource(aTransactionStatus);
 }
 /// <summary>
 ///   Initializes a new instance of the <see cref="TransactionStatusException"/> class.
 /// </summary>
 /// <param name="aTransactionStatus">A transaction status.</param>
 public TransactionStatusException(TransactionStatus aTransactionStatus)
 {
     _transactionStatus.AssignFromSource(aTransactionStatus);
 }