private TransactionInstance ParseTransactionInstance(XElement element) { var id = int.Parse(element.Attribute(XmlParsersConfig.AttributeId).Value); var kindId = int.Parse(element.Attribute(XmlParsersConfig.AttributeKindId).Value); var identificator = element.Attribute(XmlParsersConfig.AttributeIdentificator).Value; var completionType = (TransactionCompletion)int.Parse(element.Attribute(XmlParsersConfig.AttributeCompletionType).Value); var processInstanceId = int.Parse(element.Attribute(XmlParsersConfig.AttributeProcessInstanceId).Value); var initiatorId = Int32.TryParse(element.Attribute(XmlParsersConfig.AttributeInitiatorId).Value, out var tmpInitiatorId) ? tmpInitiatorId : (int?)null; var executorId = Int32.TryParse(element.Attribute(XmlParsersConfig.AttributeExecutorId).Value, out var tmpExecutorId) ? tmpExecutorId : (int?)null; var parentId = Int32.TryParse(element.Attribute(XmlParsersConfig.AttributeParentid).Value, out var tmpParentId) ? tmpParentId : (int?)null; var instance = new TransactionInstance() { Completion = completionType, ExecutorId = executorId, Id = id, Identificator = identificator, InitiatorId = initiatorId, ParentId = parentId, ProcessInstanceId = processInstanceId, TransactionKindId = kindId }; return(instance); }
/// <summary> /// Gets the data. /// </summary> /// <param name="context">The context.</param> /// <returns>Web transation datas.</returns> public override object GetData(ITabContext context) { HttpContextBase httpContext = new HttpContextWrapper(HttpContext.Current); TransactionInstance transactionInstance = TransactionInstance.GetInstance(httpContext); return(transactionInstance.Description); }
void TransactionAccepted_State_InstanceUpdated(TransactionInstance obj) { if (Application.Current.Dispatcher.Thread != Thread.CurrentThread) { Application.Current.Dispatcher.BeginInvoke(new Action <TransactionInstance>(TransactionAccepted_State_InstanceUpdated), obj); return; } TransactionLine line = this.Transactions.FirstOrDefault(e => e.Transaction.Id == obj.PublicMember.Id); if (line == null) { line = new TransactionLine() { State = TransactionState.Accepted, Transaction = obj.PublicMember }; Transactions.Add(line); } else { XComponent.Common.Clone.XCClone.Clone(obj.PublicMember, line.Transaction); line.State = TransactionState.Accepted; } line.XCState = obj.StateName; line.XCPreviousState = obj.PublicMember.PreviousState; line.Context = obj.Context; }
public void Invoke() { TransactionInstance instance = TransactionInstance.GetInstance(HttpContext.Current); var interfaceProxy = TransactionProxy <IInterfaceProxyTest> .Create(HttpContext.Current, new InterfaceProxyTest()); string result = interfaceProxy.GetName(); Assert.AreEqual(result, string.Empty); Assert.AreEqual(instance.Description.Details.Count(), 1); interfaceProxy = TransactionProxy <IInterfaceProxyTest> .Create(new HttpContextWrapper(HttpContext.Current), new InterfaceProxyTest()); result = interfaceProxy.GetName(); Assert.AreEqual(result, string.Empty); Assert.AreEqual(instance.Description.Details.First().Details.Count(), 1); var marshalProxy = TransactionProxy <MarshalProxyTest> .Create(HttpContext.Current, new MarshalProxyTest()); result = marshalProxy.GetName(); Assert.AreEqual(result, string.Empty); Assert.AreEqual(instance.Description.Details.First().Details.Count(), 2); marshalProxy = TransactionProxy <MarshalProxyTest> .Create(new HttpContextWrapper(HttpContext.Current), new MarshalProxyTest()); result = marshalProxy.GetName(); Assert.AreEqual(result, string.Empty); Assert.AreEqual(instance.Description.Details.First().Details.Count(), 3); }
public void GetInstance() { TransactionInstance instanceOne = TransactionInstance.GetInstance(HttpContext.Current); TransactionInstance instanceTwo = TransactionInstance.GetInstance(new HttpContextWrapper(HttpContext.Current)); Assert.AreEqual(instanceOne, instanceTwo); }
public TransactionInstance saveTransactionInstace(TransactionInstance transactionInstance) { using (Entities db = new Entities()) { if (db.Database.Exists()) { if (transactionInstance.Id == 0) //Add new record { db.Entry(transactionInstance).State = EntityState.Added; db.TransactionInstances.Add(transactionInstance); } else { db.Entry(transactionInstance).State = EntityState.Modified; } db.SaveChanges(); return(transactionInstance); } else { throw new CW2DatabaseUnavaiableException("Database Unavailable"); } } }
/// <summary> /// Initializes the context. /// </summary> protected void InitializeContext() { var request = new HttpRequest(string.Empty, "http://localhost/", string.Empty); var stringWriter = new StringWriter(); var response = new HttpResponse(stringWriter); HttpContext.Current = new HttpContext(request, response); TransactionInstance instance = TransactionInstance.GetInstance(HttpContext.Current); instance.StartTransaction(request.Url, string.Empty, string.Empty); }
private void ParseTransactionChildren(XElement element, TransactionInstance instance) { var childElements = element.Elements(XmlParsersConfig.ElementTransactionInstance); foreach (var childElement in childElements) { var childInstance = ParseTransactionInstance(childElement); instance.AddChild(childInstance); ParseTransactionChildren(childElement, childInstance); } }
private XElement CreateTransactionElement(TransactionInstance transaction) { return(new XElement(XmlParsersConfig.ElementTransactionInstance, new XAttribute(XmlParsersConfig.AttributeId, transaction.Id), new XAttribute(XmlParsersConfig.AttributeKindId, transaction.TransactionKindId), new XAttribute(XmlParsersConfig.AttributeIdentificator, transaction.Identificator), new XAttribute(XmlParsersConfig.AttributeCompletionType, (int)transaction.Completion), new XAttribute(XmlParsersConfig.AttributeProcessInstanceId, transaction.ProcessInstanceId), new XAttribute(XmlParsersConfig.AttributeInitiatorId, transaction.InitiatorId ?? 0), new XAttribute(XmlParsersConfig.AttributeExecutorId, transaction.ExecutorId ?? 0), new XAttribute(XmlParsersConfig.AttributeParentid, transaction.ParentId ?? 0))); }
public void GetData() { var request = new HttpRequest(string.Empty, "http://localhost/", string.Empty); var stringWriter = new StringWriter(); var response = new HttpResponse(stringWriter); HttpContext.Current = new HttpContext(request, response); TransactionInstance instance = TransactionInstance.GetInstance(HttpContext.Current); TransactionDescription description = instance.StartTransaction(request.Url, string.Empty, string.Empty); var transactionTab = new TransactionTab(); var result = transactionTab.GetData(null) as TransactionDescription; Assert.AreEqual(result, description); }
/// <inheritdoc/> public IMethodReturn Invoke(IMethodInvocation input, GetNextHandlerDelegate getNext) { TransactionInstance instance = TransactionInstance.GetInstance(HttpContext.Current); TransactionDetail detail = instance.StartDetail(input.MethodBase); try { var result = getNext()(input, getNext); return(result); } finally { instance.StopDetail(detail); } }
private void populateTransactionInstances(Transaction transaction, TransactionDto dto) { DateTime startDate = transaction.CreatedDate; DateTime expireDate = (DateTime)transaction.ExpireDate; List <DateTime> instanceDateList = getTransactionInstanceDates(dto); foreach (DateTime day in instanceDateList) { TransactionInstance transactionInstance = new TransactionInstance(); transactionInstance.TransactionDate = day; transactionInstance.Transaction = transaction; transactionInstance.TransactionId = transaction.Id; transaction.TransactionInstances.Add(transactionInstance); } }
void ErrorOnMapping_State_InstanceUpdated(TransactionInstance obj) { if (Application.Current.Dispatcher.Thread != Thread.CurrentThread) { Application.Current.Dispatcher.BeginInvoke(new Action <TransactionInstance>(ErrorOnMapping_State_InstanceUpdated), obj); return; } TransactionLine line = this.Transactions.FirstOrDefault(e => e.Transaction.Id == obj.PublicMember.Id); if (line == null) { line = new TransactionLine() { State = TransactionState.Error, Transaction = obj.PublicMember }; line.OnReject += delegate { ClientApiHelper.Instance.Api.TradeCapture_Component.Transaction_StateMachine.SendEvent(line.Context, new Reject()); }; line.OnUpdateRequested += delegate { ClientApiHelper.Instance.Api.TradeCapture_Component.Transaction_StateMachine.SendEvent(line.Context, new Instrument() { Name = line.Transaction.Instrument }); }; Transactions.Add(line); } else { XComponent.Common.Clone.XCClone.Clone(obj.PublicMember, line.Transaction); } line.XCState = obj.StateName; line.XCPreviousState = obj.PublicMember.PreviousState; line.Context = obj.Context; }
public TransactionViewModel(TransactionInstance instance, string name) { Instance = instance; Name = name; }
void ValidationError_State_InstanceUpdated(TransactionInstance obj) { }