Example #1
0
 /// <summary>
 /// Initializes a new instance of the ExifReaderException class with the specific arguments
 /// </summary>
 /// <param name="innerException">The source exception</param>
 /// <param name="propertyFormatter">The property formatter if any</param>
 /// <param name="undefinedExtractor">The undefined extractor if any</param>
 internal ExifReaderException(Exception innerException, IExifPropertyFormatter propertyFormatter, IExifValueUndefinedExtractor undefinedExtractor)
     : this(String.Format("There was a problem handling an Exif tag.\r\n" + 
             "The PropertyFormatter or UndefinedExtractor properties should indicate the cause of the problem.\r\n" + 
             "See the InnerException for more info on the source exception that was thrown.\r\n"), 
         innerException, 
         propertyFormatter, 
         undefinedExtractor)
 {
 }
Example #2
0
        /// <summary>
        /// Initializes a new instance of the ExifProperty class.
        /// It's marked internal  as it's not intended to be instantiated independently outside of the library.
        /// </summary>
        /// <param name="propertyItem">The PropertyItem to base the object on</param>
        /// <param name="parentReader">The parent ExifReader</param>
        internal ExifProperty(PropertyItem propertyItem, ExifReader parentReader)
        {
            this.parentReader = parentReader;
            this.propertyItem = propertyItem;
            this.isUnknown = !Enum.IsDefined(typeof(PropertyTagId), this.RawExifTagId);

            var customFormatter = this.parentReader.QueryForCustomPropertyFormatter(this.RawExifTagId);

            if (customFormatter == null)
            {
                this.propertyFormatter = ExifPropertyFormatterProvider.GetExifPropertyFormatter(this.ExifTag);
            }
            else
            {
                this.propertyFormatter = customFormatter;
                this.hasCustomFormatter = true;
            }
        }
Example #3
0
 /// <summary>
 /// Initializes a new instance of the ExifReaderException class with the specific arguments
 /// </summary>
 /// <param name="message">The error message for the exception</param>
 /// <param name="innerException">The source exception</param>
 /// <param name="propertyFormatter">The property formatter if any</param>
 /// <param name="undefinedExtractor">The undefined extractor if any</param>
 internal ExifReaderException(string message, Exception innerException, IExifPropertyFormatter propertyFormatter, IExifValueUndefinedExtractor undefinedExtractor)
     : base(message, innerException)
 {
     this.PropertyFormatter = propertyFormatter;
     this.UndefinedExtractor = undefinedExtractor;
 }
Example #4
0
 /// <summary>
 /// Initializes a new instance of the ExifReaderException class with the specific arguments
 /// </summary>
 /// <param name="innerException">The source exception</param>
 /// <param name="propertyFormatter">The property formatter if any</param>
 internal ExifReaderException(Exception innerException, IExifPropertyFormatter propertyFormatter)
     : this(innerException, propertyFormatter, null)
 {
 }