/// <summary>
 /// Create service
 /// </summary>
 /// <param name="client"></param>
 /// <param name="serializer"></param>
 /// <param name="logger"></param>
 public TwinModuleDiagnosticsClient(IMethodClient client, IJsonSerializer serializer,
                                    ILogger logger)
 {
     _serializer = serializer ?? throw new ArgumentNullException(nameof(serializer));
     _client     = client ?? throw new ArgumentNullException(nameof(client));
     _logger     = logger ?? throw new ArgumentNullException(nameof(logger));
 }
Пример #2
0
 /// <summary>
 /// Create client
 /// </summary>
 /// <param name="client"></param>
 /// <param name="serializer"></param>
 /// <param name="logger"></param>
 public DiscovererModuleClient(IMethodClient client, IJsonSerializer serializer,
                               ILogger logger)
 {
     _serializer = serializer ?? throw new ArgumentNullException(nameof(serializer));
     _client     = client ?? throw new ArgumentNullException(nameof(client));
     _logger     = logger ?? throw new ArgumentNullException(nameof(logger));
 }
 /// <summary>
 /// Create module client
 /// </summary>
 /// <param name="methodClient"></param>
 /// <param name="deviceId"></param>
 /// <param name="moduleId"></param>
 /// <param name="serializer"></param>
 public TwinModuleClient(IMethodClient methodClient, string deviceId, string moduleId,
                         IJsonSerializer serializer = null)
 {
     _serializer   = serializer ?? new NewtonSoftJsonSerializer();
     _methodClient = methodClient ?? throw new ArgumentNullException(nameof(methodClient));
     _moduleId     = moduleId ?? throw new ArgumentNullException(nameof(moduleId));
     _deviceId     = deviceId ?? throw new ArgumentNullException(nameof(deviceId));
 }
Пример #4
0
 /// <summary>
 /// Create server
 /// </summary>
 /// <param name="client"></param>
 /// <param name="http"></param>
 /// <param name="logger"></param>
 public HttpTunnelServer(IMethodClient client, IHttpClient http, ILogger logger)
 {
     _client   = client ?? throw new ArgumentNullException(nameof(client));
     _http     = http ?? throw new ArgumentNullException(nameof(http));
     _logger   = logger ?? throw new ArgumentNullException(nameof(logger));
     _requests = new ConcurrentDictionary <string, HttpRequestProcessor>();
     _timer    = new Timer(_ => OnTimer(), null,
                           kTimeoutCheckInterval, kTimeoutCheckInterval);
 }
        /// <summary>
        /// Call method with json payload.
        /// </summary>
        /// <param name="client"></param>
        /// <param name="deviceId"></param>
        /// <param name="moduleId"></param>
        /// <param name="method"></param>
        /// <param name="json"></param>
        /// <param name="timeout"></param>
        /// <param name="ct"></param>
        /// <returns></returns>
        public static async Task <string> CallMethodAsync(this IMethodClient client,
                                                          string deviceId, string moduleId, string method, string json,
                                                          TimeSpan?timeout = null, CancellationToken ct = default)
        {
            var response = await client.CallMethodAsync(deviceId, moduleId, method,
                                                        json == null?null : Encoding.UTF8.GetBytes(json),
                                                        ContentMimeType.Json, timeout, ct);

            return(response.Length == 0 ? null : Encoding.UTF8.GetString(response));
        }
        /// <summary>
        /// Call method with json payload.
        /// </summary>
        /// <param name="client"></param>
        /// <param name="deviceId"></param>
        /// <param name="moduleId"></param>
        /// <param name="method"></param>
        /// <param name="json"></param>
        /// <param name="timeout"></param>
        /// <returns></returns>
        public static async Task <string> CallMethodAsync(this IMethodClient client,
                                                          string deviceId, string moduleId, string method, string json,
                                                          TimeSpan?timeout = null)
        {
            var response = await client.CallMethodAsync(deviceId, moduleId, method,
                                                        Encoding.UTF8.GetBytes(json), ContentEncodings.MimeTypeUaJson,
                                                        timeout);

            return(Encoding.UTF8.GetString(response));
        }
 /// <summary>
 /// Create module client
 /// </summary>
 /// <param name="methodClient"></param>
 /// <param name="config"></param>
 /// <param name="serializer"></param>
 public TwinModuleClient(IMethodClient methodClient, ITwinModuleConfig config,
                         IJsonSerializer serializer) :
     this(methodClient, config?.DeviceId, config?.ModuleId, serializer)
 {
 }
 /// <summary>
 /// Create client
 /// </summary>
 /// <param name="client"></param>
 /// <param name="logger"></param>
 public DiscoveryClient(IMethodClient client, ILogger logger)
 {
     _client = client ?? throw new ArgumentNullException(nameof(client));
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
 }
Пример #9
0
 /// <summary>
 /// Create module client
 /// </summary>
 /// <param name="methodClient"></param>
 /// <param name="config"></param>
 public HistoryModuleClient(IMethodClient methodClient, IHistoryModuleConfig config) :
     this(methodClient, config?.DeviceId, config?.ModuleId)
 {
 }
Пример #10
0
 /// <summary>
 /// Create module client
 /// </summary>
 /// <param name="methodClient"></param>
 /// <param name="deviceId"></param>
 /// <param name="moduleId"></param>
 public HistoryModuleClient(IMethodClient methodClient, string deviceId, string moduleId)
 {
     _methodClient = methodClient ?? throw new ArgumentNullException(nameof(methodClient));
     _moduleId     = moduleId ?? throw new ArgumentNullException(nameof(moduleId));
     _deviceId     = deviceId ?? throw new ArgumentNullException(nameof(deviceId));
 }
Пример #11
0
 /// <summary>
 /// Create module client
 /// </summary>
 /// <param name="methodClient"></param>
 /// <param name="config"></param>
 public TwinModuleClient(IMethodClient methodClient, ITwinModuleConfig config) :
     this(methodClient, config?.DeviceId, config?.ModuleId)
 {
 }
 /// <summary>
 /// Create module client
 /// </summary>
 /// <param name="methodClient"></param>
 /// <param name="config"></param>
 /// <param name="serializer"></param>
 public HistoryModuleClient(IMethodClient methodClient, IHistoryModuleConfig config,
                            ISerializer serializer) :
     this(methodClient, config?.DeviceId, config?.ModuleId, serializer)
 {
 }