# Google Data APIs Client Library (1.43.0)

## com.google.gdata.data.photos
Class ExifTags

    java.lang.Object
      com.google.gdata.data.AbstractExtension
          com.google.gdata.data.ExtensionPoint
              com.google.gdata.data.photos.ExifTags

All Implemented Interfaces:
  Extension, Extensible

    public class ExifTags

extends ExtensionPoint
implements Extensible, Extension

A photo's exif tags. Exif tags are represented as a collection element with nested elements, because that way clients can iterate over the exif tags without having to know ahead of time exactly what is in it. We also support retrieval of particular exif tags if the client knows what they want. Some standard tags are supported with helper methods to retrieve them by name.

Nested Class Summary

Nested classes/interfaces inherited from class com.google.gdata.data.ExtensionPoint
`ExtensionPoint.CumulativeBlobHandler, ExtensionPoint.ExtensionHandler`

Nested classes/interfaces inherited from class com.google.gdata.data.AbstractExtension
`AbstractExtension.AttributesHandler`

Field Summary

Fields inherited from class com.google.gdata.data.ExtensionPoint
`xmlBlob`

Fields inherited from class com.google.gdata.data.AbstractExtension
`localName, namespace`

Constructor Summary
`ExifTags()`

Method Summary
`void` `declareExtensions(ExtensionProfile extProfile)` Declares the set of expected Extension types for an ExtensionPoint within the target extension profile.
`void` `generate(com.google.gdata.util.common.xml.XmlWriter w, ExtensionProfile extProfile)` Generates an XML representation for the extension.
`java.lang.Float` `getApetureFNumber()`
`java.lang.String` `getCameraMake()`
`java.lang.String` `getCameraModel()`
`static ExtensionDescription` `getDefaultDescription()`
`java.lang.Float` `getDistance()`
`ExifTag` `getExifTag(java.lang.String exifName)` Get a particular exif tag by name.
`java.util.Collection<ExifTag>` `getExifTags()` Gets the exif tags as a collection of `ExifTag`.
`java.lang.String` `getExifTagValue(java.lang.String exifName)` Gets the value of a particular exif tag, or null if it doesn't exist.
`java.lang.Float` `getExposureTime()`
`java.lang.Boolean` `getFlashUsed()`
`java.lang.Float` `getFocalLength()`
`XmlParser.ElementHandler` `getHandler(ExtensionProfile extProfile, java.lang.String namespace, java.lang.String localName, org.xml.sax.Attributes attrs)` The default implementation uses the `AbstractExtension.AttributesHandler` to handle parsing the extension.
`java.lang.String` `getImageUniqueID()`
`java.lang.Integer` `getIsoEquivalent()`
`java.util.Date` `getTime()`
`void` `setApetureFNumber(java.lang.Float fstop)` Set the fstop value used.
`void` `setCameraMake(java.lang.String make)` Set the make of the camera used.
`void` `setCameraModel(java.lang.String model)` Set the model of the camera used.
`void` `setDistance(java.lang.Float distance)` Set the distance to the subject.
`void` `setExifTagValue(java.lang.String name, java.lang.Number value)` Convenience method to set an exif tag based on a float value.
`void` `setExifTagValue(java.lang.String name, java.lang.String value)` Sets the value of a particular exif tag by name.
`void` `setExposureTime(java.lang.Float exposure)` Set the exposure time used.
`void` `setFlashUsed(java.lang.Boolean flash)` Set whether the flash was used.
`void` `setFocalLength(java.lang.Float focalLength)` Set the focal length used.
`void` `setImageUniqueID(java.lang.String imageUniqueID)` Set the unique image id for the photo.
`void` `setIsoEquivalent(java.lang.Integer iso)` Set the iso equivalent value used.
`void` `setTime(java.util.Date time)` Set the date/time the photo was taken.

Methods inherited from class com.google.gdata.data.ExtensionPoint

`addExtension, addExtension, addRepeatingExtension, addRepeatingExtension, checkRequiredExtensions, createExtensionInstance, generate, generateCumulativeXmlBlob, generateExtensions, generateStartElement, getExtension, getExtensionDescription, getExtensionHandler, getExtensions, getManifest, getRepeatingExtension, getRepeatingExtensions, getXmlBlob, hasExtension, hasRepeatingExtension, initializeArbitraryXml, parseCumulativeXmlBlob, removeExtension, removeExtension, removeRepeatingExtension, setExtension, setXmlBlob, visit, visitChild, visitChildren`

Methods inherited from class com.google.gdata.data.AbstractExtension
`consumeAttributes, disableStrictValidation, enableStrictValidation, eq, generateAttributes, getExtensionLocalName, getExtensionNamespace, isImmutable, isStrictValidation, putAttributes, sameClassAs, setImmutable, throwExceptionForMissingAttribute, throwExceptionIfImmutable, validate`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface com.google.gdata.data.photos.Extensible
`addExtension, addRepeatingExtension, removeExtension, removeExtension, removeRepeatingExtension, setExtension`

Constructor Detail

### ExifTags

    public ExifTags()

Method Detail

### declareExtensions

    public void declareExtensions(ExtensionProfile extProfile)

  Description copied from class: `ExtensionPoint`
  Declares the set of expected Extension types for an ExtensionPoint within the target extension profile. The base implementation does not declare any extensions, but can be overridden by specific types of ExtensionPoints that always contain a well-defined set of extensions.

  Specified by:
    `declareExtensions` in interface `Extensible`
  Overrides:
    `declareExtensions` in class `ExtensionPoint`
  Parameters:
    `extProfile` - the ExtensionProfile to initialize.

### getDefaultDescription

    public static ExtensionDescription getDefaultDescription()

### getExifTags

    public java.util.Collection<ExifTag> getExifTags()

  Gets the exif tags as a collection of `ExifTag`.

### getExifTag

    public ExifTag getExifTag(java.lang.String exifName)

  Get a particular exif tag by name. This will retrieve the proper exif tag based on the name.

### getExifTagValue

    public java.lang.String getExifTagValue(java.lang.String exifName)

  Gets the value of a particular exif tag, or null if it doesn't exist.

### setExifTagValue

    public void setExifTagValue(java.lang.String name,
                                java.lang.Number value)

  Convenience method to set an exif tag based on a float value.

### setExifTagValue

    public void setExifTagValue(java.lang.String name,
                                java.lang.String value)

  Sets the value of a particular exif tag by name.

### getCameraMake

    public java.lang.String getCameraMake()

  Returns:
    the make of the camera, i.e. Nikon, Canon, Sony.

### setCameraMake

    public void setCameraMake(java.lang.String make)

  Set the make of the camera used.

### getCameraModel

    public java.lang.String getCameraModel()

  Returns:
    the model of the camera used.

### setCameraModel

    public void setCameraModel(java.lang.String model)

  Set the model of the camera used.

### getIsoEquivalent

    public java.lang.Integer getIsoEquivalent()
                                       throws ParseException

  Returns:
    the iso equivalent value used.
  Throws:
    `ParseException` - if the value was not parsable as an integer.

### setIsoEquivalent

    public void setIsoEquivalent(java.lang.Integer iso)

  Set the iso equivalent value used.

### getExposureTime

    public java.lang.Float getExposureTime()
                                    throws ParseException

  Returns:
    the exposure time used.
  Throws:
    `ParseException`

### setExposureTime

    public void setExposureTime(java.lang.Float exposure)

  Set the exposure time used.

### getApetureFNumber

    public java.lang.Float getApetureFNumber()
                                      throws ParseException

  Returns:
    the fstop value used.
  Throws:
    `ParseException` - if the value is not a valid floating point number.

### setApetureFNumber

    public void setApetureFNumber(java.lang.Float fstop)

  Set the fstop value used.

### getDistance

    public java.lang.Float getDistance()
                                throws ParseException

  Returns:
    the distance to the subject.
  Throws:
    `ParseException` - if the value is not a valid floating point number.

### setDistance

    public void setDistance(java.lang.Float distance)

  Set the distance to the subject.

### getTime

    public java.util.Date getTime()
                           throws ParseException

  Returns:
    the time the photo was taken.
  Throws:
    `ParseException` - if the value is not a number, represented as a long.

### setTime

    public void setTime(java.util.Date time)

  Set the date/time the photo was taken.

### getFocalLength

    public java.lang.Float getFocalLength()
                                   throws ParseException

  Returns:
    the focal length used.
  Throws:
    `ParseException` - if the value is not a valid floating point number.

### setFocalLength

    public void setFocalLength(java.lang.Float focalLength)

  Set the focal length used.

### getFlashUsed

    public java.lang.Boolean getFlashUsed()

  Returns:
    `Boolean.TRUE` if the flash was used.

### setFlashUsed

    public void setFlashUsed(java.lang.Boolean flash)

  Set whether the flash was used.

### getImageUniqueID

    public java.lang.String getImageUniqueID()

  Returns:
    the unique image id for the photo.

### setImageUniqueID

    public void setImageUniqueID(java.lang.String imageUniqueID)

  Set the unique image id for the photo.

### generate

    public void generate(com.google.gdata.util.common.xml.XmlWriter w,
                         ExtensionProfile extProfile)
                  throws java.io.IOException

  Description copied from interface: `Extension`
  Generates an XML representation for the extension.

  Specified by:
    `generate` in interface `Extension`
  Overrides:
    `generate` in class `AbstractExtension`
  Parameters:
    `w` - XML writer
    `extProfile` - extension profile
  Throws:
    `java.io.IOException`

### getHandler

    public XmlParser.ElementHandler getHandler(ExtensionProfile extProfile,
                                               java.lang.String namespace,
                                               java.lang.String localName,
                                               org.xml.sax.Attributes attrs)

  Description copied from class: `AbstractExtension`
  The default implementation uses the `AbstractExtension.AttributesHandler` to handle parsing the extension.

  Specified by:
    `getHandler` in interface `Extension`
  Overrides:
    `getHandler` in class `ExtensionPoint`
  Parameters:
    `extProfile` - extension profile
    `namespace` - extension namespace
    `localName` - tag name, without the namespace prefix
    `attrs` - tag attributes
  Returns:
    an element handler