# Google Data APIs Client Library (1.43.0)

## com.google.gdata.data.docs
Class Feature

    java.lang.Object
      com.google.gdata.data.AbstractExtension
          com.google.gdata.data.ExtensionPoint
              com.google.gdata.data.docs.Feature

All Implemented Interfaces:
  Extension

    public class Feature

extends ExtensionPoint

A rate limited or restricted feature.

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
`Feature()` Default mutable constructor.

Method Summary
`void` `declareExtensions(ExtensionProfile extProfile)` Declares the set of expected Extension types for an ExtensionPoint within the target extension profile.
`static ExtensionDescription` `getDefaultDescription(boolean required, boolean repeatable)` Returns the extension description, specifying whether it is required, and whether it is repeatable.
`FeatureName` `getFeatureName()` Returns the feature name.
`FeatureRate` `getFeatureRate()` Returns the feature rate.
`boolean` `hasFeatureName()` Returns whether it has the feature name.
`boolean` `hasFeatureRate()` Returns whether it has the feature rate.
`void` `setFeatureName(FeatureName featureName)` Sets the feature name.
`void` `setFeatureRate(FeatureRate featureRate)` Sets the feature rate.
`java.lang.String` `toString()`
`protected void` `validate()` Checks the attributes to see if there are any problems.

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

`addExtension, addExtension, addRepeatingExtension, addRepeatingExtension, checkRequiredExtensions, createExtensionInstance, generate, generateCumulativeXmlBlob, generateExtensions, generateStartElement, getExtension, getExtensionDescription, getExtensionHandler, getExtensions, getHandler, 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, generate, generateAttributes, getExtensionLocalName, getExtensionNamespace, isImmutable, isStrictValidation, putAttributes, sameClassAs, setImmutable, throwExceptionForMissingAttribute, throwExceptionIfImmutable`

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

Constructor Detail

### Feature

    public Feature()

  Default mutable constructor.

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.

  Overrides:
    `declareExtensions` in class `ExtensionPoint`
  Parameters:
    `extProfile` - the ExtensionProfile to initialize.

### getFeatureName

    public FeatureName getFeatureName()

  Returns the feature name.

  Returns:
    feature name

### setFeatureName

    public void setFeatureName(FeatureName featureName)

  Sets the feature name.

  Parameters:
    `featureName` - feature name or `null` to reset

### hasFeatureName

    public boolean hasFeatureName()

  Returns whether it has the feature name.

  Returns:
    whether it has the feature name

### getFeatureRate

    public FeatureRate getFeatureRate()

  Returns the feature rate.

  Returns:
    feature rate

### setFeatureRate

    public void setFeatureRate(FeatureRate featureRate)

  Sets the feature rate.

  Parameters:
    `featureRate` - feature rate or `null` to reset

### hasFeatureRate

    public boolean hasFeatureRate()

  Returns whether it has the feature rate.

  Returns:
    whether it has the feature rate

### validate

    protected void validate()

  Description copied from class: `AbstractExtension`
  Checks the attributes to see if there are any problems. Default implementation does nothing, though generally this is discouraged unless there really are no restrictions.

  Overrides:
    `validate` in class `AbstractExtension`

### getDefaultDescription

    public static ExtensionDescription getDefaultDescription(boolean required,
                                                             boolean repeatable)

  Returns the extension description, specifying whether it is required, and whether it is repeatable.

  Parameters:
    `required` - whether it is required
    `repeatable` - whether it is repeatable
  Returns:
    extension description

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`