Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.10 in JDK 6 
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2013.03.04 at 03:49:29 PM IST 
//


package in.shop2020.feeds.products;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.NormalizedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;


/**
 * <p>Java class for anonymous complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType>
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="CameraType" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="point-and-shoot"/>
 *               &lt;enumeration value="slr"/>
 *               &lt;enumeration value="instant"/>
 *               &lt;enumeration value="single-use"/>
 *               &lt;enumeration value="large-format"/>
 *               &lt;enumeration value="medium-format"/>
 *               &lt;enumeration value="rangefinder"/>
 *               &lt;enumeration value="field"/>
 *               &lt;enumeration value="monorail"/>
 *               &lt;enumeration value="kids"/>
 *               &lt;enumeration value="3-d"/>
 *               &lt;enumeration value="micro"/>
 *               &lt;enumeration value="panorama"/>
 *               &lt;enumeration value="passport-and-id"/>
 *               &lt;enumeration value="underwater"/>
 *               &lt;enumeration value="other"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="Durability" type="{}LongString" maxOccurs="5" minOccurs="0"/>
 *         &lt;element name="Features" type="{}LongString" maxOccurs="5" minOccurs="0"/>
 *         &lt;element name="FilmFormat" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="aps"/>
 *               &lt;enumeration value="16mm"/>
 *               &lt;enumeration value="35mm"/>
 *               &lt;enumeration value="110"/>
 *               &lt;enumeration value="120"/>
 *               &lt;enumeration value="2x3"/>
 *               &lt;enumeration value="4x5"/>
 *               &lt;enumeration value="5x7"/>
 *               &lt;enumeration value="6x8"/>
 *               &lt;enumeration value="8x10"/>
 *               &lt;enumeration value="8x20"/>
 *               &lt;enumeration value="10x12"/>
 *               &lt;enumeration value="11x14"/>
 *               &lt;enumeration value="12x20"/>
 *               &lt;enumeration value="14x17"/>
 *               &lt;enumeration value="16x20"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="FilmManagementFeatures" type="{}FilmManagementFeaturesTypeValues" minOccurs="0"/>
 *         &lt;element name="FixedFocalLength" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="FocusType" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="auto-focus"/>
 *               &lt;enumeration value="manual-focus"/>
 *               &lt;enumeration value="manual-and-auto-focus"/>
 *               &lt;enumeration value="focus-free"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="LensThread" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="LensType" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="fixed"/>
 *               &lt;enumeration value="interchangeable"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="OpticalZoomRange" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="MacroFocus" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="MinFocalLength" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="MaxFocalLength" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="MinAperture" type="{}ApertureDimension" minOccurs="0"/>
 *         &lt;element name="MaxAperture" type="{}ApertureDimension" minOccurs="0"/>
 *         &lt;element name="MinShutterSpeed" type="{}FourDecimal" minOccurs="0"/>
 *         &lt;element name="MaxShutterSpeed" type="{}FourDecimal" minOccurs="0"/>
 *         &lt;element name="MeteringMethods" type="{}StringNotNull" minOccurs="0"/>
 *         &lt;element name="ISORange" type="{}StringNotNull" minOccurs="0"/>
 *         &lt;element name="FlashType" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="automatic"/>
 *               &lt;enumeration value="forced"/>
 *               &lt;enumeration value="fill"/>
 *               &lt;enumeration value="none"/>
 *               &lt;enumeration value="flash-override"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="FlashModes" type="{}StringNotNull" maxOccurs="5" minOccurs="0"/>
 *         &lt;element name="HotShoe" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="FlashSynchronization" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="Red-EyeReduction" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="DiopterAdjustment" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="Viewfinder" type="{}StringNotNull" maxOccurs="3" minOccurs="0"/>
 *         &lt;element name="LCD" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="DateImprint" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="MidrollChange" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="MidrollRewind" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="AutoRewind" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="AutoFilmAdvance" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="AutoFilmLoad" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="SelfTimer" type="{}TimeDimension" minOccurs="0"/>
 *         &lt;element name="RemoteIncluded" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="ContinuousShooting" type="{}ContinuousShootingDimension" minOccurs="0"/>
 *         &lt;element name="BatteryType" type="{}StringNotNull" minOccurs="0"/>
 *         &lt;element name="BatteryIncluded" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="ExposureControl" maxOccurs="5" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="manual"/>
 *               &lt;enumeration value="automatic"/>
 *               &lt;enumeration value="program"/>
 *               &lt;enumeration value="manual-and-automatic"/>
 *               &lt;enumeration value="aperture-priority"/>
 *               &lt;enumeration value="shutter-speed-priority"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="Size" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="compact"/>
 *               &lt;enumeration value="ultra-compact"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="PackageType" minOccurs="0">
 *           &lt;simpleType>
 *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *               &lt;enumeration value="body-only"/>
 *               &lt;enumeration value="multiple-lenses"/>
 *             &lt;/restriction>
 *           &lt;/simpleType>
 *         &lt;/element>
 *         &lt;element name="Remote" type="{}LongString" minOccurs="0"/>
 *         &lt;element name="WaterResistanceDepth" type="{}LengthDimension" minOccurs="0"/>
 *         &lt;element name="WaterResistanceLevel" type="{}WaterResistantType" minOccurs="0"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "cameraType",
    "durability",
    "features",
    "filmFormat",
    "filmManagementFeatures",
    "fixedFocalLength",
    "focusType",
    "lensThread",
    "lensType",
    "opticalZoomRange",
    "macroFocus",
    "minFocalLength",
    "maxFocalLength",
    "minAperture",
    "maxAperture",
    "minShutterSpeed",
    "maxShutterSpeed",
    "meteringMethods",
    "isoRange",
    "flashType",
    "flashModes",
    "hotShoe",
    "flashSynchronization",
    "redEyeReduction",
    "diopterAdjustment",
    "viewfinder",
    "lcd",
    "dateImprint",
    "midrollChange",
    "midrollRewind",
    "autoRewind",
    "autoFilmAdvance",
    "autoFilmLoad",
    "selfTimer",
    "remoteIncluded",
    "continuousShooting",
    "batteryType",
    "batteryIncluded",
    "exposureControl",
    "size",
    "packageType",
    "remote",
    "waterResistanceDepth",
    "waterResistanceLevel"
})
@XmlRootElement(name = "FilmCamera")
public class FilmCamera {

    @XmlElement(name = "CameraType")
    protected String cameraType;
    @XmlElement(name = "Durability")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected List<String> durability;
    @XmlElement(name = "Features")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected List<String> features;
    @XmlElement(name = "FilmFormat")
    protected String filmFormat;
    @XmlElement(name = "FilmManagementFeatures")
    protected FilmManagementFeaturesTypeValues filmManagementFeatures;
    @XmlElement(name = "FixedFocalLength")
    protected LengthDimension fixedFocalLength;
    @XmlElement(name = "FocusType")
    protected String focusType;
    @XmlElement(name = "LensThread")
    protected LengthDimension lensThread;
    @XmlElement(name = "LensType")
    protected String lensType;
    @XmlElement(name = "OpticalZoomRange")
    protected LengthDimension opticalZoomRange;
    @XmlElement(name = "MacroFocus")
    protected LengthDimension macroFocus;
    @XmlElement(name = "MinFocalLength")
    protected LengthDimension minFocalLength;
    @XmlElement(name = "MaxFocalLength")
    protected LengthDimension maxFocalLength;
    @XmlElement(name = "MinAperture")
    protected ApertureDimension minAperture;
    @XmlElement(name = "MaxAperture")
    protected ApertureDimension maxAperture;
    @XmlElement(name = "MinShutterSpeed")
    protected BigDecimal minShutterSpeed;
    @XmlElement(name = "MaxShutterSpeed")
    protected BigDecimal maxShutterSpeed;
    @XmlElement(name = "MeteringMethods")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String meteringMethods;
    @XmlElement(name = "ISORange")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String isoRange;
    @XmlElement(name = "FlashType")
    protected String flashType;
    @XmlElement(name = "FlashModes")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected List<String> flashModes;
    @XmlElement(name = "HotShoe")
    protected Boolean hotShoe;
    @XmlElement(name = "FlashSynchronization")
    protected Boolean flashSynchronization;
    @XmlElement(name = "Red-EyeReduction")
    protected Boolean redEyeReduction;
    @XmlElement(name = "DiopterAdjustment")
    protected Boolean diopterAdjustment;
    @XmlElement(name = "Viewfinder")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected List<String> viewfinder;
    @XmlElement(name = "LCD")
    protected Boolean lcd;
    @XmlElement(name = "DateImprint")
    protected Boolean dateImprint;
    @XmlElement(name = "MidrollChange")
    protected Boolean midrollChange;
    @XmlElement(name = "MidrollRewind")
    protected Boolean midrollRewind;
    @XmlElement(name = "AutoRewind")
    protected Boolean autoRewind;
    @XmlElement(name = "AutoFilmAdvance")
    protected Boolean autoFilmAdvance;
    @XmlElement(name = "AutoFilmLoad")
    protected Boolean autoFilmLoad;
    @XmlElement(name = "SelfTimer")
    protected TimeDimension selfTimer;
    @XmlElement(name = "RemoteIncluded")
    protected Boolean remoteIncluded;
    @XmlElement(name = "ContinuousShooting")
    protected ContinuousShootingDimension continuousShooting;
    @XmlElement(name = "BatteryType")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String batteryType;
    @XmlElement(name = "BatteryIncluded")
    protected Boolean batteryIncluded;
    @XmlElement(name = "ExposureControl")
    protected List<String> exposureControl;
    @XmlElement(name = "Size")
    protected String size;
    @XmlElement(name = "PackageType")
    protected String packageType;
    @XmlElement(name = "Remote")
    @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
    protected String remote;
    @XmlElement(name = "WaterResistanceDepth")
    protected LengthDimension waterResistanceDepth;
    @XmlElement(name = "WaterResistanceLevel")
    protected WaterResistantType waterResistanceLevel;

    /**
     * Gets the value of the cameraType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getCameraType() {
        return cameraType;
    }

    /**
     * Sets the value of the cameraType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setCameraType(String value) {
        this.cameraType = value;
    }

    /**
     * Gets the value of the durability property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the durability property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDurability().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getDurability() {
        if (durability == null) {
            durability = new ArrayList<String>();
        }
        return this.durability;
    }

    /**
     * Gets the value of the features property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the features property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getFeatures().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getFeatures() {
        if (features == null) {
            features = new ArrayList<String>();
        }
        return this.features;
    }

    /**
     * Gets the value of the filmFormat property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFilmFormat() {
        return filmFormat;
    }

    /**
     * Sets the value of the filmFormat property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFilmFormat(String value) {
        this.filmFormat = value;
    }

    /**
     * Gets the value of the filmManagementFeatures property.
     * 
     * @return
     *     possible object is
     *     {@link FilmManagementFeaturesTypeValues }
     *     
     */
    public FilmManagementFeaturesTypeValues getFilmManagementFeatures() {
        return filmManagementFeatures;
    }

    /**
     * Sets the value of the filmManagementFeatures property.
     * 
     * @param value
     *     allowed object is
     *     {@link FilmManagementFeaturesTypeValues }
     *     
     */
    public void setFilmManagementFeatures(FilmManagementFeaturesTypeValues value) {
        this.filmManagementFeatures = value;
    }

    /**
     * Gets the value of the fixedFocalLength property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getFixedFocalLength() {
        return fixedFocalLength;
    }

    /**
     * Sets the value of the fixedFocalLength property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setFixedFocalLength(LengthDimension value) {
        this.fixedFocalLength = value;
    }

    /**
     * Gets the value of the focusType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFocusType() {
        return focusType;
    }

    /**
     * Sets the value of the focusType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFocusType(String value) {
        this.focusType = value;
    }

    /**
     * Gets the value of the lensThread property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getLensThread() {
        return lensThread;
    }

    /**
     * Sets the value of the lensThread property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setLensThread(LengthDimension value) {
        this.lensThread = value;
    }

    /**
     * Gets the value of the lensType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getLensType() {
        return lensType;
    }

    /**
     * Sets the value of the lensType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setLensType(String value) {
        this.lensType = value;
    }

    /**
     * Gets the value of the opticalZoomRange property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getOpticalZoomRange() {
        return opticalZoomRange;
    }

    /**
     * Sets the value of the opticalZoomRange property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setOpticalZoomRange(LengthDimension value) {
        this.opticalZoomRange = value;
    }

    /**
     * Gets the value of the macroFocus property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getMacroFocus() {
        return macroFocus;
    }

    /**
     * Sets the value of the macroFocus property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setMacroFocus(LengthDimension value) {
        this.macroFocus = value;
    }

    /**
     * Gets the value of the minFocalLength property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getMinFocalLength() {
        return minFocalLength;
    }

    /**
     * Sets the value of the minFocalLength property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setMinFocalLength(LengthDimension value) {
        this.minFocalLength = value;
    }

    /**
     * Gets the value of the maxFocalLength property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getMaxFocalLength() {
        return maxFocalLength;
    }

    /**
     * Sets the value of the maxFocalLength property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setMaxFocalLength(LengthDimension value) {
        this.maxFocalLength = value;
    }

    /**
     * Gets the value of the minAperture property.
     * 
     * @return
     *     possible object is
     *     {@link ApertureDimension }
     *     
     */
    public ApertureDimension getMinAperture() {
        return minAperture;
    }

    /**
     * Sets the value of the minAperture property.
     * 
     * @param value
     *     allowed object is
     *     {@link ApertureDimension }
     *     
     */
    public void setMinAperture(ApertureDimension value) {
        this.minAperture = value;
    }

    /**
     * Gets the value of the maxAperture property.
     * 
     * @return
     *     possible object is
     *     {@link ApertureDimension }
     *     
     */
    public ApertureDimension getMaxAperture() {
        return maxAperture;
    }

    /**
     * Sets the value of the maxAperture property.
     * 
     * @param value
     *     allowed object is
     *     {@link ApertureDimension }
     *     
     */
    public void setMaxAperture(ApertureDimension value) {
        this.maxAperture = value;
    }

    /**
     * Gets the value of the minShutterSpeed property.
     * 
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *     
     */
    public BigDecimal getMinShutterSpeed() {
        return minShutterSpeed;
    }

    /**
     * Sets the value of the minShutterSpeed property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *     
     */
    public void setMinShutterSpeed(BigDecimal value) {
        this.minShutterSpeed = value;
    }

    /**
     * Gets the value of the maxShutterSpeed property.
     * 
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *     
     */
    public BigDecimal getMaxShutterSpeed() {
        return maxShutterSpeed;
    }

    /**
     * Sets the value of the maxShutterSpeed property.
     * 
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *     
     */
    public void setMaxShutterSpeed(BigDecimal value) {
        this.maxShutterSpeed = value;
    }

    /**
     * Gets the value of the meteringMethods property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getMeteringMethods() {
        return meteringMethods;
    }

    /**
     * Sets the value of the meteringMethods property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setMeteringMethods(String value) {
        this.meteringMethods = value;
    }

    /**
     * Gets the value of the isoRange property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getISORange() {
        return isoRange;
    }

    /**
     * Sets the value of the isoRange property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setISORange(String value) {
        this.isoRange = value;
    }

    /**
     * Gets the value of the flashType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFlashType() {
        return flashType;
    }

    /**
     * Sets the value of the flashType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFlashType(String value) {
        this.flashType = value;
    }

    /**
     * Gets the value of the flashModes property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the flashModes property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getFlashModes().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getFlashModes() {
        if (flashModes == null) {
            flashModes = new ArrayList<String>();
        }
        return this.flashModes;
    }

    /**
     * Gets the value of the hotShoe property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isHotShoe() {
        return hotShoe;
    }

    /**
     * Sets the value of the hotShoe property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setHotShoe(Boolean value) {
        this.hotShoe = value;
    }

    /**
     * Gets the value of the flashSynchronization property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isFlashSynchronization() {
        return flashSynchronization;
    }

    /**
     * Sets the value of the flashSynchronization property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setFlashSynchronization(Boolean value) {
        this.flashSynchronization = value;
    }

    /**
     * Gets the value of the redEyeReduction property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isRedEyeReduction() {
        return redEyeReduction;
    }

    /**
     * Sets the value of the redEyeReduction property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setRedEyeReduction(Boolean value) {
        this.redEyeReduction = value;
    }

    /**
     * Gets the value of the diopterAdjustment property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isDiopterAdjustment() {
        return diopterAdjustment;
    }

    /**
     * Sets the value of the diopterAdjustment property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setDiopterAdjustment(Boolean value) {
        this.diopterAdjustment = value;
    }

    /**
     * Gets the value of the viewfinder property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the viewfinder property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getViewfinder().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getViewfinder() {
        if (viewfinder == null) {
            viewfinder = new ArrayList<String>();
        }
        return this.viewfinder;
    }

    /**
     * Gets the value of the lcd property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isLCD() {
        return lcd;
    }

    /**
     * Sets the value of the lcd property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setLCD(Boolean value) {
        this.lcd = value;
    }

    /**
     * Gets the value of the dateImprint property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isDateImprint() {
        return dateImprint;
    }

    /**
     * Sets the value of the dateImprint property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setDateImprint(Boolean value) {
        this.dateImprint = value;
    }

    /**
     * Gets the value of the midrollChange property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isMidrollChange() {
        return midrollChange;
    }

    /**
     * Sets the value of the midrollChange property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setMidrollChange(Boolean value) {
        this.midrollChange = value;
    }

    /**
     * Gets the value of the midrollRewind property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isMidrollRewind() {
        return midrollRewind;
    }

    /**
     * Sets the value of the midrollRewind property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setMidrollRewind(Boolean value) {
        this.midrollRewind = value;
    }

    /**
     * Gets the value of the autoRewind property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isAutoRewind() {
        return autoRewind;
    }

    /**
     * Sets the value of the autoRewind property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setAutoRewind(Boolean value) {
        this.autoRewind = value;
    }

    /**
     * Gets the value of the autoFilmAdvance property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isAutoFilmAdvance() {
        return autoFilmAdvance;
    }

    /**
     * Sets the value of the autoFilmAdvance property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setAutoFilmAdvance(Boolean value) {
        this.autoFilmAdvance = value;
    }

    /**
     * Gets the value of the autoFilmLoad property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isAutoFilmLoad() {
        return autoFilmLoad;
    }

    /**
     * Sets the value of the autoFilmLoad property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setAutoFilmLoad(Boolean value) {
        this.autoFilmLoad = value;
    }

    /**
     * Gets the value of the selfTimer property.
     * 
     * @return
     *     possible object is
     *     {@link TimeDimension }
     *     
     */
    public TimeDimension getSelfTimer() {
        return selfTimer;
    }

    /**
     * Sets the value of the selfTimer property.
     * 
     * @param value
     *     allowed object is
     *     {@link TimeDimension }
     *     
     */
    public void setSelfTimer(TimeDimension value) {
        this.selfTimer = value;
    }

    /**
     * Gets the value of the remoteIncluded property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isRemoteIncluded() {
        return remoteIncluded;
    }

    /**
     * Sets the value of the remoteIncluded property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setRemoteIncluded(Boolean value) {
        this.remoteIncluded = value;
    }

    /**
     * Gets the value of the continuousShooting property.
     * 
     * @return
     *     possible object is
     *     {@link ContinuousShootingDimension }
     *     
     */
    public ContinuousShootingDimension getContinuousShooting() {
        return continuousShooting;
    }

    /**
     * Sets the value of the continuousShooting property.
     * 
     * @param value
     *     allowed object is
     *     {@link ContinuousShootingDimension }
     *     
     */
    public void setContinuousShooting(ContinuousShootingDimension value) {
        this.continuousShooting = value;
    }

    /**
     * Gets the value of the batteryType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getBatteryType() {
        return batteryType;
    }

    /**
     * Sets the value of the batteryType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setBatteryType(String value) {
        this.batteryType = value;
    }

    /**
     * Gets the value of the batteryIncluded property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isBatteryIncluded() {
        return batteryIncluded;
    }

    /**
     * Sets the value of the batteryIncluded property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setBatteryIncluded(Boolean value) {
        this.batteryIncluded = value;
    }

    /**
     * Gets the value of the exposureControl property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the exposureControl property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getExposureControl().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getExposureControl() {
        if (exposureControl == null) {
            exposureControl = new ArrayList<String>();
        }
        return this.exposureControl;
    }

    /**
     * Gets the value of the size property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getSize() {
        return size;
    }

    /**
     * Sets the value of the size property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setSize(String value) {
        this.size = value;
    }

    /**
     * Gets the value of the packageType property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getPackageType() {
        return packageType;
    }

    /**
     * Sets the value of the packageType property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setPackageType(String value) {
        this.packageType = value;
    }

    /**
     * Gets the value of the remote property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getRemote() {
        return remote;
    }

    /**
     * Sets the value of the remote property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setRemote(String value) {
        this.remote = value;
    }

    /**
     * Gets the value of the waterResistanceDepth property.
     * 
     * @return
     *     possible object is
     *     {@link LengthDimension }
     *     
     */
    public LengthDimension getWaterResistanceDepth() {
        return waterResistanceDepth;
    }

    /**
     * Sets the value of the waterResistanceDepth property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthDimension }
     *     
     */
    public void setWaterResistanceDepth(LengthDimension value) {
        this.waterResistanceDepth = value;
    }

    /**
     * Gets the value of the waterResistanceLevel property.
     * 
     * @return
     *     possible object is
     *     {@link WaterResistantType }
     *     
     */
    public WaterResistantType getWaterResistanceLevel() {
        return waterResistanceLevel;
    }

    /**
     * Sets the value of the waterResistanceLevel property.
     * 
     * @param value
     *     allowed object is
     *     {@link WaterResistantType }
     *     
     */
    public void setWaterResistanceLevel(WaterResistantType value) {
        this.waterResistanceLevel = value;
    }

}