public class DefaultApplicationMetadata extends Object implements ApplicationMetadata
Some meta-data like the name, version and description are directly available, but some other like the icon and screenshot lists are lazy retrieved.
Two meta-data are equals if they are the same name and the same version.
Constructor and Description |
---|
DefaultApplicationMetadata(String applicationID,
ImageInfo[] icons,
ImageInfo[] screenshots,
ExtraMetadata[] extraMetadatas)
Instantiates a new application metadata.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
Indicates whether some other object is "equal to" this one.
|
String |
getApplicationIdentifier()
Gets the application identifier.
|
String |
getDescription()
Gets the application description.
|
ExtraMetadata[] |
getExtraMetadatasList()
Gets the list of extra metadatas for this application.
|
ImageInfo[] |
getIconsList()
Gets the list of icons for this application.
|
String |
getName()
Gets the application name.
|
ImageInfo[] |
getScreenshotsList()
Gets the list of screenshots for this application.
|
String |
getVersion()
Gets the application version.
|
int |
hashCode()
Returns a hash code value for the object.
|
void |
setDescription(String description)
Sets the description.
|
void |
setName(String name)
Sets the name.
|
void |
setVersion(String version)
Sets the version.
|
public DefaultApplicationMetadata(String applicationID, ImageInfo[] icons, ImageInfo[] screenshots, ExtraMetadata[] extraMetadatas)
applicationID
- the application id.icons
- the application icons.screenshots
- the application screenshots.extraMetadatas
- the application extra metadatas.public boolean equals(Object obj)
Object
The equals
method implements an equivalence relation on non-null object references:
x
, x.equals(x)
should return true
.
x
and y
,
x.equals(y)
should return true
if and only if y.equals(x)
returns
true
.
x
, y
, and
z
, if x.equals(y)
returns true
and y.equals(z)
returns
true
, then x.equals(z)
should return true
.
x
and y
, multiple
invocations of x.equals(y)
consistently return true
or consistently return
false
, provided no information used in equals
comparisons on the objects is
modified.
x
, x.equals(null)
should return
false
.
The equals
method for class Object
implements the most discriminating possible
equivalence relation on objects; that is, for any non-null reference values x
and
y
, this method returns true
if and only if x
and y
refer to the
same object (x == y
has the value true
).
Note that it is generally necessary to override the hashCode
method whenever this method
is overridden, so as to maintain the general contract for the hashCode
method, which
states that equal objects must have equal hash codes.
equals
in class Object
obj
- the reference object with which to compare.true
if this object is the same as the obj argument; false
otherwise.Object.hashCode()
,
HashMap
public String getApplicationIdentifier()
getApplicationIdentifier
in interface ApplicationMetadata
public String getDescription()
ApplicationMetadata
getDescription
in interface ApplicationMetadata
public ExtraMetadata[] getExtraMetadatasList() throws IOException
ApplicationMetadata
getExtraMetadatasList
in interface ApplicationMetadata
IOException
- if an I/O error occurs.public ImageInfo[] getIconsList() throws IOException
ApplicationMetadata
getIconsList
in interface ApplicationMetadata
IOException
- if an I/O error occurs.public String getName()
ApplicationMetadata
getName
in interface ApplicationMetadata
public ImageInfo[] getScreenshotsList() throws IOException
ApplicationMetadata
getScreenshotsList
in interface ApplicationMetadata
IOException
- if an I/O error occurs.public String getVersion()
ApplicationMetadata
getVersion
in interface ApplicationMetadata
public int hashCode()
Object
HashMap
.
The general contract of hashCode
is:
hashCode
method must consistently return the same integer, provided no
information used in equals
comparisons on the object is modified. This integer need not
remain consistent from one execution of an application to another execution of the same
application.
equals(Object)
method, then calling the
hashCode
method on each of the two objects must produce the same integer result.
Object.equals(java.lang.Object)
method, then calling the hashCode
method on each of the two objects must produce distinct integer results. However, the programmer
should be aware that producing distinct integer results for unequal objects may improve the
performance of hash tables.
As much as is reasonably practical, the hashCode method defined by class Object
does
return distinct integers for distinct objects. (This is typically implemented by converting the
internal address of the object into an integer, but this implementation technique is not required
by the JavaTM programming language.)
hashCode
in class Object
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)
public void setDescription(String description)
description
- the description to setpublic void setName(String name)
name
- the name to setpublic void setVersion(String version)
version
- the version to set