public async Task <bool> PostGlobalValue(string name, string type, string description, object value, string username = null, string password = null) { if (!InputDataTypes.IsValidDataType(type)) { throw new Exception("Global Value " + name + " has invalid type " + type); } using (HttpClient client = new HttpClient(clientHandler)) { client.BaseAddress = new Uri(_url); AuthorizeClientWithUser(client, username, password); var response = await client.PostAsync("/api/global-values", new StringContent(JsonConvert.SerializeObject(new { name = name, type = type, description = description, value = value }), Encoding.UTF8, "application/json")); var contents = await response.Content.ReadAsStringAsync(); if (response.IsSuccessStatusCode) { return(true); } else { throw new Exception("Error sending Global Value template request, returned with error " + response.StatusCode); } } }
public async Task <CommandResult <GlobalValue> > Handle(CreateGlobalValueCommand request, CancellationToken cancellationToken) { var stopwatch = new Stopwatch(); stopwatch.Start(); if (!InputDataTypes.IsValidDataType(request.Type)) { throw new InvalidInputTypeException("Input " + request.Type + " is not valid."); } if (await _entitiesRepository.GetFirstOrDefaultAsync <GlobalValue>( gv => gv.Name == request.Name) != null) { throw new InvalidGlobalValuesException("The global value name " + request.Name + " is already in-use."); } var createdGV = new GlobalValue( request.Name, request.Type, request.Description, request.Type == InputDataTypes.Secret ? SecurityUtility.SymmetricallyEncrypt((string)request.Value, ClusterStateService.GetEncryptionKey()) : request.Value, GlobalValueStatuses.Enabled, Guid.NewGuid(), request.CreatedBy, DateTime.UtcNow ); var result = _node.Handle(new AddShardWriteOperation() { Operation = ConsensusCore.Domain.Enums.ShardOperationOptions.Create, WaitForSafeWrite = true, Data = createdGV }); stopwatch.Stop(); return(new CommandResult <GlobalValue>() { ObjectRefId = createdGV.Id.ToString(), ElapsedMs = stopwatch.ElapsedMilliseconds, Type = CommandResultTypes.Create, Result = createdGV }); }
public unsafe override void SetInputData(InputDataTypes inputType, InputSmoothingSettings smoothingSettings, Pair <float, float>[] steerVsForwardSpeedTable, float accel, float brake, float steer, float handbrake) { if (steerVsForwardSpeedTable.Length > 8) { Log.Fatal("PhysXPhysicsVehicle: SetInputData: The amount of steer vs forward speed table item can't be more than 8."); } if (nativeVehicle != IntPtr.Zero) { float[] smoothingSettings2 = new float[] { smoothingSettings.RiseRateAccel, smoothingSettings.RiseRateBrake, smoothingSettings.RiseRateSteer, smoothingSettings.RiseRateHandbrake, smoothingSettings.FallRateAccel, smoothingSettings.FallRateBrake, smoothingSettings.FallRateSteer, smoothingSettings.FallRateHandbrake }; float[] steerVsForwardSpeedTable2 = new float[steerVsForwardSpeedTable.Length * 2]; for (int n = 0; n < steerVsForwardSpeedTable.Length; n++) { steerVsForwardSpeedTable2[n * 2 + 0] = steerVsForwardSpeedTable[n].First; steerVsForwardSpeedTable2[n * 2 + 1] = steerVsForwardSpeedTable[n].Second; } fixed(float *pSmoothingSettings = smoothingSettings2, pSteerVsForwardSpeedTable = steerVsForwardSpeedTable2) { PhysXNativeVehicle.SetInputData(nativeVehicle, inputType == InputDataTypes.Digital, pSmoothingSettings, steerVsForwardSpeedTable.Length, pSteerVsForwardSpeedTable, accel, brake, steer, handbrake); } } }
public unsafe override void SetInputData( InputDataTypes inputType, InputSmoothingSettings smoothingSettings, Pair<float, float>[] steerVsForwardSpeedTable, float accel, float brake, float steer, float handbrake ) { if( steerVsForwardSpeedTable.Length > 8 ) Log.Fatal( "PhysXPhysicsVehicle: SetInputData: The amount of steer vs forward speed table item can't be more than 8." ); if( nativeVehicle != IntPtr.Zero ) { float[] smoothingSettings2 = new float[] { smoothingSettings.RiseRateAccel, smoothingSettings.RiseRateBrake, smoothingSettings.RiseRateSteer, smoothingSettings.RiseRateHandbrake, smoothingSettings.FallRateAccel, smoothingSettings.FallRateBrake, smoothingSettings.FallRateSteer, smoothingSettings.FallRateHandbrake }; float[] steerVsForwardSpeedTable2 = new float[ steerVsForwardSpeedTable.Length * 2 ]; for( int n = 0; n < steerVsForwardSpeedTable.Length; n++ ) { steerVsForwardSpeedTable2[ n * 2 + 0 ] = steerVsForwardSpeedTable[ n ].First; steerVsForwardSpeedTable2[ n * 2 + 1 ] = steerVsForwardSpeedTable[ n ].Second; } fixed( float* pSmoothingSettings = smoothingSettings2, pSteerVsForwardSpeedTable = steerVsForwardSpeedTable2 ) { PhysXNativeVehicle.SetInputData( nativeVehicle, inputType == InputDataTypes.Digital, pSmoothingSettings, steerVsForwardSpeedTable.Length, pSteerVsForwardSpeedTable, accel, brake, steer, handbrake ); } } }