com.google.gdata.util
Class Version

java.lang.Object
  extended by com.google.gdata.util.Version

public class Version
extends java.lang.Object

The Version class is a helper class that describes version information about a particular type of service.


Field Summary
static int ANY
          The ANY value indicates a version component that will match any revision.
 
Constructor Summary
Version(java.lang.Class<? extends Service> serviceClass, int major, int minor, Version... impliedVersions)
          Creates a new Version instance for the specified service and defines the major and minor versions for the service.
Version(java.lang.Class<? extends Service> serviceClass, java.lang.String versionDescription, Version... impliedVersions)
          Creates a new Version instance using a version description with the format [{service}]{major}.{minor}.
 
Method Summary
 boolean equals(java.lang.Object o)
           
 java.util.List<Version> getImpliedVersions()
          Returns the list of related services versions that are implied by this version.
 int getMajor()
          Returns the major revision of the version.
 int getMinor()
          Returns the minor revision of the version.
 java.lang.Class<? extends Service> getServiceClass()
          Returns the service type of the version.
 java.lang.String getVersionString()
          Returns the String representation of the version.
 int hashCode()
           
 boolean isCompatible(Version v)
          Returns true if the specified is compatible with this version or one of its implied versions.
 boolean isSameService(Version v)
          Returns true if the target version is for the same service.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

ANY

public static final int ANY
The ANY value indicates a version component that will match any revision.

See Also:
Constant Field Values
Constructor Detail

Version

public Version(java.lang.Class<? extends Service> serviceClass,
               int major,
               int minor,
               Version... impliedVersions)
        throws java.lang.NullPointerException,
               java.lang.IllegalArgumentException
Creates a new Version instance for the specified service and defines the major and minor versions for the service.

Parameters:
serviceClass - the service type.
major - the major revision number of the service.
minor - the minor revision number of the service.
Throws:
java.lang.NullPointerException - if the service type is null.
java.lang.IllegalArgumentException - if revision values are invalid.

Version

public Version(java.lang.Class<? extends Service> serviceClass,
               java.lang.String versionDescription,
               Version... impliedVersions)
        throws java.lang.IllegalArgumentException
Creates a new Version instance using a version description with the format [{service}]{major}.{minor}.

Parameters:
serviceClass - the service type.
versionDescription - the service description.
Throws:
java.lang.IllegalArgumentException - if the versionDescription has an invalid syntax or includes a service name that does not match the service type.
Method Detail

getServiceClass

public final java.lang.Class<? extends Service> getServiceClass()
Returns the service type of the version.

Returns:
service type.

getMajor

public final int getMajor()
Returns the major revision of the version.

Returns:
major revision.

getMinor

public final int getMinor()
Returns the minor revision of the version.

Returns:
minor revision.

getVersionString

public final java.lang.String getVersionString()
Returns the String representation of the version.


isSameService

public final boolean isSameService(Version v)
Returns true if the target version is for the same service.

Parameters:
v - target version to check.
Returns:
true if service matches.

isCompatible

public final boolean isCompatible(Version v)
Returns true if the specified is compatible with this version or one of its implied versions. Two versions are compatible if they are for the same service and have a matching major version number (or one of them has a major version of ANY.


getImpliedVersions

public java.util.List<Version> getImpliedVersions()
Returns the list of related services versions that are implied by this version.


equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

toString

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