Google Data APIs Client Library (1.41.1)



com.google.gdata.data.photos
Class ExifTags

java.lang.Object
  extended by com.google.gdata.data.AbstractExtension
      extended by com.google.gdata.data.ExtensionPoint
          extended by 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