Ejemplo n.º 1
0
        public Task <ContractExecutionResult> PostSpeedSummary([FromBody] SpeedSummaryRequest speedSummaryRequest)
        {
            Log.LogInformation($"{nameof(PostSpeedSummary)}: {Request.QueryString}");

            speedSummaryRequest.Validate();
            ValidateFilterMachines(nameof(PostSpeedSummary), speedSummaryRequest.ProjectUid, speedSummaryRequest.Filter);

            return(WithServiceExceptionTryExecuteAsync(() =>
                                                       RequestExecutorContainer
                                                       .Build <SummarySpeedExecutor>(ConfigStore, LoggerFactory, ServiceExceptionHandler)
                                                       .ProcessAsync(speedSummaryRequest)));
        }
Ejemplo n.º 2
0
        protected override async Task <ContractExecutionResult> ProcessAsyncEx <T>(T item)
        {
            try
            {
                var request = CastRequestObjectTo <SummarySpeedRequest>(item);
#if RAPTOR
                if (configStore.GetValueBool("ENABLE_TREX_GATEWAY_SPEED") ?? false)
                {
#endif
                await PairUpAssetIdentifiers(request.ProjectUid.Value, request.Filter);
                await PairUpImportedFileIdentifiers(request.ProjectUid.Value, filter1 : request.Filter);

                var speedSummaryRequest = new SpeedSummaryRequest(
                    request.ProjectUid.Value,
                    request.Filter,
                    request.LiftBuildSettings.MachineSpeedTarget,
                    AutoMapperUtility.Automapper.Map <LiftSettings>(request.LiftBuildSettings));

                return(await trexCompactionDataProxy.SendDataPostRequest <SpeedSummaryResult, SpeedSummaryRequest>(speedSummaryRequest, "/speed/summary", customHeaders));

#if RAPTOR
            }

            var raptorResult = raptorClient.GetSummarySpeed(request.ProjectId ?? VelociraptorConstants.NO_PROJECT_ID,
                                                            ASNodeRPC.__Global.Construct_TASNodeRequestDescriptor((request.CallId ?? Guid.NewGuid()), 0,
                                                                                                                  TASNodeCancellationDescriptorType.cdtVolumeSummary),
                                                            RaptorConverters.ConvertFilter(request.Filter, request.ProjectId, raptorClient, overrideAssetIds: new List <long>()),
                                                            RaptorConverters.ConvertLift(request.LiftBuildSettings, TFilterLayerMethod.flmNone),
                                                            out var result);

            if (raptorResult == TASNodeErrorStatus.asneOK)
            {
                return(ConvertResult(result));
            }

            throw CreateServiceException <SummarySpeedExecutor>((int)raptorResult);
#endif
            }
            finally
            {
                ContractExecutionStates.ClearDynamic();
            }
        }