/// <summary> /// Write the trace information to the trace table /// </summary> /// <param name="ado"></param> /// <param name="request"></param> /// <param name="inTransaction"></param> /// <returns></returns> internal static int Execute(ADO ado, JSONRPC_API request) { //Check in case the NoTrace attribute is set for the requested API method //If so, don't proceed with the trace. if (Resources.MethodReader.MethodHasAttribute(request.method, "NoTrace")) { return(0); } Trace_ADO tAdo = new Trace_ADO(); Trace_DTO_Create dto = new Trace_DTO_Create(); if (ActiveDirectory.IsAuthenticated(request.userPrincipal)) { dto.CcnUsername = request.userPrincipal.SamAccountName.ToString(); } dto.TrcIp = request.ipAddress; dto.TrcMethod = request.method; dto.TrcParams = JSONRPC.MaskParameters(request.parameters.ToString()); dto.TrcUseragent = request.userAgent; int created = tAdo.Create(ado, dto); if (created == 0) { Log.Instance.Debug("Can't create trace"); } return(created); }
/// <summary> /// Execute /// </summary> /// <returns></returns> protected override bool Execute() { //Validation of parameters and user have been successful. We may now proceed to read from the database var adoTrace = new Trace_ADO(); //Traces are returned as an ADO result ADO_readerOutput result = adoTrace.Read(Ado, DTO); if (!result.hasData) { return(false); } Log.Instance.Debug("Data found :" + JsonConvert.SerializeObject(result)); Response.data = result.data; return(true); }