com.android.ide.common.resources.configuration
Class ResourceQualifier

java.lang.Object
  extended by com.android.ide.common.resources.configuration.ResourceQualifier
All Implemented Interfaces:
java.lang.Comparable<ResourceQualifier>
Direct Known Subclasses:
CountryCodeQualifier, DensityQualifier, KeyboardStateQualifier, LanguageQualifier, LayoutDirectionQualifier, NavigationMethodQualifier, NavigationStateQualifier, NetworkCodeQualifier, NightModeQualifier, RegionQualifier, ScreenDimensionQualifier, ScreenHeightQualifier, ScreenOrientationQualifier, ScreenRatioQualifier, ScreenSizeQualifier, ScreenWidthQualifier, SmallestScreenWidthQualifier, TextInputMethodQualifier, TouchScreenQualifier, UiModeQualifier, VersionQualifier

public abstract class ResourceQualifier
extends java.lang.Object
implements java.lang.Comparable<ResourceQualifier>

Base class for resource qualifiers.

The resource qualifier classes are designed as immutable.


Constructor Summary
ResourceQualifier()
           
 
Method Summary
abstract  boolean checkAndSet(java.lang.String value, FolderConfiguration config)
          Check if the value is valid for this qualifier, and if so sets the value into a Folder Configuration.
 int compareTo(ResourceQualifier o)
           
 boolean deprecated()
          Whether this qualifier is deprecated.
abstract  boolean equals(java.lang.Object object)
          Returns true if both objects are equal.
abstract  java.lang.String getFolderSegment()
          Returns a string formatted to be used in a folder name.
abstract  java.lang.String getLongDisplayValue()
          Returns a string formatted for display purpose.
abstract  java.lang.String getName()
          Returns the human readable name of the qualifier.
abstract  java.lang.String getShortDisplayValue()
          Returns a string formatted for display purpose.
abstract  java.lang.String getShortName()
          Returns a shorter human readable name for the qualifier.
abstract  boolean hasFakeValue()
          Returns whether the qualifier has a fake value.
abstract  int hashCode()
          Returns a hash code value for the object.
 boolean isBetterMatchThan(ResourceQualifier compareTo, ResourceQualifier reference)
          Returns true if the receiver is a better match for the given reference than the given compareTo comparable.
 boolean isMatchFor(ResourceQualifier qualifier)
          Returns whether the given qualifier is a match for the receiver.
abstract  boolean isValid()
          Returns whether the qualifier has a valid filter value.
abstract  int since()
          Returns when this qualifier was added to Android.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ResourceQualifier

public ResourceQualifier()
Method Detail

getName

public abstract java.lang.String getName()
Returns the human readable name of the qualifier.


getShortName

public abstract java.lang.String getShortName()
Returns a shorter human readable name for the qualifier.

See Also:
getName()

since

public abstract int since()
Returns when this qualifier was added to Android.


deprecated

public boolean deprecated()
Whether this qualifier is deprecated.


isValid

public abstract boolean isValid()
Returns whether the qualifier has a valid filter value.


hasFakeValue

public abstract boolean hasFakeValue()
Returns whether the qualifier has a fake value.

Fake values are used internally and should not be used as real qualifier value.


checkAndSet

public abstract boolean checkAndSet(java.lang.String value,
                                    FolderConfiguration config)
Check if the value is valid for this qualifier, and if so sets the value into a Folder Configuration.

Parameters:
value - The value to check and set. Must not be null.
config - The folder configuration to receive the value. Must not be null.
Returns:
true if the value was valid and was set.

getFolderSegment

public abstract java.lang.String getFolderSegment()
Returns a string formatted to be used in a folder name.

This is declared as abstract to force children classes to implement it.


isMatchFor

public boolean isMatchFor(ResourceQualifier qualifier)
Returns whether the given qualifier is a match for the receiver.

The default implementation returns the result of equals(Object).

Children class that re-implements this must implement isBetterMatchThan(ResourceQualifier, ResourceQualifier) too.

Parameters:
qualifier - the reference qualifier
Returns:
true if the receiver is a match.

isBetterMatchThan

public boolean isBetterMatchThan(ResourceQualifier compareTo,
                                 ResourceQualifier reference)
Returns true if the receiver is a better match for the given reference than the given compareTo comparable.

Parameters:
compareTo - The ResourceQualifier to compare to. Can be null, in which case the method must return true.
reference - The reference qualifier value for which the match is.
Returns:
true if the receiver is a better match.

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getShortDisplayValue

public abstract java.lang.String getShortDisplayValue()
Returns a string formatted for display purpose.


getLongDisplayValue

public abstract java.lang.String getLongDisplayValue()
Returns a string formatted for display purpose.


equals

public abstract boolean equals(java.lang.Object object)
Returns true if both objects are equal.

This is declared as abstract to force children classes to implement it.

Overrides:
equals in class java.lang.Object

hashCode

public abstract int hashCode()
Returns a hash code value for the object.

This is declared as abstract to force children classes to implement it.

Overrides:
hashCode in class java.lang.Object

compareTo

public final int compareTo(ResourceQualifier o)
Specified by:
compareTo in interface java.lang.Comparable<ResourceQualifier>