Пример #1
0
        private async Task <List <T> > ResolveSensorTargetsAsync <T>(int deviceId, SensorTargetParameters parameters, Func <int, bool> progressCallback, Func <string, List <T> > parser)
        {
            var response = await GetSensorTargetsResponseAsync(deviceId, parameters, progressCallback).ConfigureAwait(false);

            if (response == null)
            {
                return(null);
            }

            return(parser(response));
        }
Пример #2
0
        private List <T> ResolveSensorTargets <T>(int deviceId, SensorTargetParameters parameters, Func <int, bool> progressCallback, Func <string, List <T> > parser)
        {
            var response = GetSensorTargetsResponse(deviceId, parameters, progressCallback);

            if (response == null)
            {
                return(null);
            }

            return(parser(response));
        }
Пример #3
0
        private async Task <string> GetSensorTargetsResponseAsync(int deviceId, SensorTargetParameters parameters, Func <int, bool> progressCallback)
        {
            Func <HttpResponseMessage, Task <string> > getSensorTargetTmpId = o => Task.FromResult(ResponseParser.GetSensorTargetTmpId(o));

            var tmpIdStr = await RequestEngine.ExecuteRequestAsync(parameters, getSensorTargetTmpId).ConfigureAwait(false);

            int tmpId;

            if (!int.TryParse(tmpIdStr, out tmpId))
            {
                throw new PrtgRequestException($"Failed to resolve sensor targets for sensor type '{parameters[Parameter.SensorType]}': type was not valid");
            }

            var response = await WaitForSensorTargetResolutionAsync(deviceId, tmpId, progressCallback).ConfigureAwait(false);

            return(response);
        }
Пример #4
0
        private string GetSensorTargetsResponse(int deviceId, SensorTargetParameters parameters, Func <int, bool> progressCallback)
        {
            Func <HttpResponseMessage, string> getSensorTargetTmpId = ResponseParser.GetSensorTargetTmpId;

            var tmpIdStr = RequestEngine.ExecuteRequest(parameters, getSensorTargetTmpId);

            int tmpId;

            if (!int.TryParse(tmpIdStr, out tmpId))
            {
                throw new PrtgRequestException($"Failed to resolve sensor targets for sensor type '{parameters[Parameter.SensorType]}': type was not valid");
            }

            var response = WaitForSensorTargetResolution(deviceId, tmpId, progressCallback);

            return(response);
        }
Пример #5
0
        private async Task <string> GetSensorTargetsResponseAsync(int deviceId, string sensorType, Func <int, bool> progressCallback)
        {
            var parameters = new SensorTargetParameters(deviceId, sensorType);

            return(await GetSensorTargetsResponseAsync(deviceId, parameters, progressCallback).ConfigureAwait(false));
        }
Пример #6
0
        //######################################
        // GetSensorTargetsResponse
        //######################################

        private string GetSensorTargetsResponse(int deviceId, string sensorType, Func <int, bool> progressCallback)
        {
            var parameters = new SensorTargetParameters(deviceId, sensorType);

            return(GetSensorTargetsResponse(deviceId, parameters, progressCallback));
        }
Пример #7
0
        internal async Task <List <T> > ResolveSensorTargetsAsync <T>(int deviceId, string sensorType, Func <int, bool> progressCallback, Func <string, List <T> > parser)
        {
            var parameters = new SensorTargetParameters(deviceId, sensorType);

            return(await ResolveSensorTargetsAsync(deviceId, parameters, progressCallback, parser).ConfigureAwait(false));
        }
Пример #8
0
        internal List <T> ResolveSensorTargets <T>(int deviceId, string sensorType, Func <int, bool> progressCallback, Func <string, List <T> > parser)
        {
            var parameters = new SensorTargetParameters(deviceId, sensorType);

            return(ResolveSensorTargets(deviceId, parameters, progressCallback, parser));
        }