private void Init(
     BaseProvider devices,
     string deviceId,
     string userAgent)
 {
     _userAgent = userAgent;
     Init(devices, deviceId);
 }
 private void Init(
     BaseProvider devices,
     string deviceId,
     string userAgent,
     BaseDeviceInfo parent)
 {
     _parent = parent;
     Init(devices, deviceId, userAgent);
 }
 /// <summary>
 /// Creates an instance of DeviceInfo.
 /// </summary>
 /// <param name="deviceId">A unique Identifier of the device.</param>
 /// <param name="devices">A reference to the complete index of devices.</param>
 internal BaseDeviceInfo(
     BaseProvider devices,
     string deviceId)
 {
     Init(devices, deviceId);
 }
        private void Init(
            BaseProvider devices,
            string deviceId)
        {
            if (string.IsNullOrEmpty(deviceId))
                throw new ArgumentNullException("deviceId");

            if (devices == null)
                throw new ArgumentNullException("devices");

            _provider = devices;
            _deviceId = deviceId;
            _deviceProperties = new Collection(devices.Strings);
        }
 /// <summary>
 /// Creates an instance of <cref see="BaseDeviceInfo"/>.
 /// </summary>
 /// <param name="userAgent">User agent string used to identify this device.</param>
 /// <param name="deviceId">A unique Identifier of the device.</param>
 /// <param name="devices">A reference to the complete index of devices.</param>
 internal BaseDeviceInfo(
     BaseProvider devices,
     string deviceId,
     string userAgent)
 {
     Init(devices, deviceId, userAgent);
 }