|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.android.sdklib.internal.repository.packages.Package
com.android.sdklib.internal.repository.packages.MajorRevisionPackage
com.android.sdklib.internal.repository.packages.AddonPackage
public class AddonPackage
Represents an add-on XML node in an SDK repository.
| Nested Class Summary | |
|---|---|
static class |
AddonPackage.Lib
An add-on library. |
| Nested classes/interfaces inherited from class com.android.sdklib.internal.repository.packages.Package |
|---|
Package.License, Package.UpdateInfo |
| Field Summary |
|---|
| Fields inherited from interface com.android.sdklib.internal.repository.packages.IExactApiLevelDependency |
|---|
API_LEVEL_INVALID |
| Fields inherited from interface com.android.sdklib.internal.repository.packages.ILayoutlibVersion |
|---|
LAYOUTLIB_API_NOT_SPECIFIED, LAYOUTLIB_REV_NOT_SPECIFIED |
| Constructor Summary | |
|---|---|
protected |
AddonPackage(IAndroidTarget target,
java.util.Properties props)
|
protected |
AddonPackage(SdkSource source,
IAndroidTarget target,
java.util.Properties props)
|
|
AddonPackage(SdkSource source,
org.w3c.dom.Node packageNode,
java.lang.String nsUri,
java.util.Map<java.lang.String,java.lang.String> licenses)
Creates a new add-on package from the attributes and elements of the given XML node. |
| Method Summary | |
|---|---|
protected java.lang.String |
comparisonKey()
For addon packages, we want to add vendor|name to the sorting key before the revision number. |
static Package |
create(IAndroidTarget target,
java.util.Properties props)
Creates a new platform package based on an actual IAndroidTarget (which
IAndroidTarget.isPlatform() false) from the SdkManager. |
static Package |
createBroken(java.lang.String archiveOsPath,
java.util.Properties sourceProps,
java.util.Map<java.lang.String,java.lang.String> addonProps,
java.lang.String error)
Creates a broken addon which we know failed to load properly. |
boolean |
equals(java.lang.Object obj)
|
AndroidVersion |
getAndroidVersion()
Returns the version of the platform dependency of this package. |
java.lang.String |
getDisplayName()
Returns the name, a string for display purposes. |
java.lang.String |
getDisplayVendor()
Returns the vendor, a string for display purposes. |
int |
getExactApiLevel()
Returns the exact API level required by this package, if > 0, or IExactApiLevelDependency.API_LEVEL_INVALID if the value was missing. |
java.io.File |
getInstallFolder(java.lang.String osSdkRoot,
SdkManager sdkManager)
Computes a potential installation folder if an archive of this package were to be installed right away in the given SDK root. |
com.android.utils.Pair<java.lang.Integer,java.lang.Integer> |
getLayoutlibVersion()
Returns the layoutlib version. |
AddonPackage.Lib[] |
getLibs()
Returns the libs defined in this add-on. |
java.lang.String |
getListDescription()
Returns a description of this package that is suitable for a list display. |
java.lang.String |
getLongDescription()
Returns a long description for an IDescription. |
java.lang.String |
getNameId()
Returns the name id, a string, for add-on packages or for libraries. |
java.lang.String |
getShortDescription()
Returns a short description for an IDescription. |
java.lang.String |
getVendorId()
Returns the vendor id, a string, for add-on packages. |
int |
hashCode()
|
java.lang.String |
installId()
Returns a string identifier to install this package from the command line. |
boolean |
sameItemAs(Package pkg)
Returns whether the give package represents the same item as the current package. |
void |
saveProperties(java.util.Properties props)
Save the properties of the current packages in the given Properties object. |
| Methods inherited from class com.android.sdklib.internal.repository.packages.MajorRevisionPackage |
|---|
canBeUpdatedBy, getRevision |
| Methods inherited from class com.android.sdklib.internal.repository.packages.Package |
|---|
compareTo, getArchives, getDescription, getDescUrl, getLicense, getParentSource, getReleaseNote, getReleaseNoteUrl, hasArchive, hasCompatibleArchive, initializeArchives, isLocal, isObsolete, postInstallHook, postUnzipFileHook, preInstallHook, toString |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public AddonPackage(SdkSource source,
org.w3c.dom.Node packageNode,
java.lang.String nsUri,
java.util.Map<java.lang.String,java.lang.String> licenses)
source - The SdkSource where this is loaded from.packageNode - The XML element being parsed.nsUri - The namespace URI of the originating XML document, to be able to deal with
parameters that vary according to the originating XML schema.licenses - The licenses loaded from the XML originating document.
protected AddonPackage(IAndroidTarget target,
java.util.Properties props)
protected AddonPackage(SdkSource source,
IAndroidTarget target,
java.util.Properties props)
| Method Detail |
|---|
public static Package create(IAndroidTarget target,
java.util.Properties props)
IAndroidTarget (which
IAndroidTarget.isPlatform() false) from the SdkManager.
This is used to list local SDK folders in which case there is one archive which
URL is the actual target location.
By design, this creates a package with one and only one archive.
public static Package createBroken(java.lang.String archiveOsPath,
java.util.Properties sourceProps,
java.util.Map<java.lang.String,java.lang.String> addonProps,
java.lang.String error)
archiveOsPath - The absolute OS path of the addon folder.sourceProps - The properties parsed from the addon's source.properties. Can be null.addonProps - The properties parsed from the addon manifest (NOT the source.properties).error - The error indicating why this addon failed to be loaded.public int getExactApiLevel()
IExactApiLevelDependencyIExactApiLevelDependency.API_LEVEL_INVALID if the value was missing.
This attribute is mandatory and should not be normally missing.
It can only happen when dealing with an invalid repository XML.
getExactApiLevel in interface IExactApiLevelDependencypublic void saveProperties(java.util.Properties props)
Properties object.
These properties will later be given to a constructor that takes a Properties object.
saveProperties in class MajorRevisionPackage@NonNull public java.lang.String getVendorId()
@NonNull public java.lang.String getDisplayVendor()
@NonNull public java.lang.String getNameId()
@NonNull public java.lang.String getDisplayName()
@NonNull public AndroidVersion getAndroidVersion()
AndroidVersion as the platform it depends on.
getAndroidVersion in interface IAndroidVersionProvidergetAndroidVersion in interface IPlatformDependency@NonNull public AddonPackage.Lib[] getLibs()
@NonNull public com.android.utils.Pair<java.lang.Integer,java.lang.Integer> getLayoutlibVersion()
ILayoutlibVersion.LAYOUTLIB_API_NOT_SPECIFIED (0)
if the layoutlib version isn't specified.
The second integer is the revision for that given API. It is >= 0
and works as a minor revision number, incremented for the same API level.
getLayoutlibVersion in interface ILayoutlibVersion@NonNull public java.lang.String installId()
'android list sdk' will show these IDs and then in turn they can
be provided to 'android update sdk --no-ui --filter' to select
some specific packages.
The identifiers must have the following properties: Package.comparisonKey()
and the Comparable interface.
installId in class Packagepublic java.lang.String getListDescription()
Package.getShortDescription() should be used if you want more details
such as the package revision number or the API, if applicable.
getListDescription in class Packagepublic java.lang.String getShortDescription()
IDescription.
getShortDescription in interface IDescriptiongetShortDescription in class Packagepublic java.lang.String getLongDescription()
IDescription.
The long description is whatever the XML contains for the <description> field,
or the short description if the former is empty.
getLongDescription in interface IDescriptiongetLongDescription in class Package
public java.io.File getInstallFolder(java.lang.String osSdkRoot,
SdkManager sdkManager)
getInstallFolder in class PackageosSdkRoot - The OS path of the SDK root folder.sdkManager - An existing SDK manager to list current platforms and addons.
File corresponding to the directory to use to install this package.public boolean sameItemAs(Package pkg)
Package
sameItemAs in class Packagepkg - the package to compare.
public int hashCode()
hashCode in class Packagepublic boolean equals(java.lang.Object obj)
equals in class Packageprotected java.lang.String comparisonKey()
Package.compareTo(Package).
The key is a string.
The base package class return a string that encodes the package type,
the revision number and the platform version, if applicable, in the form:
t:N|v:NNNN.P|r:NNNN|
All fields must start by a "letter colon" prefix and end with a vertical pipe (|, ASCII 124).
The string format may change between releases and clients should not
store them outside of the session or expect them to be consistent between
different releases. They are purely an internal implementation details of the
Package.compareTo(Package) method.
Derived classes should get the string from the super class and then append
or insert their own |-separated content.
For example an extra vendor name & path can be inserted before the revision
number, since it has more sorting weight.
comparisonKey in class Package
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||