Introduction

This document lists changes made to the Autoupdate Services API.


Index of APIs

Incompatible changes by date

Fuller descriptions of all changes can be found below (follow links).

Not all deprecations are listed here, assuming that the deprecated APIs continue to essentially work. For a full deprecation list, please consult the Javadoc.

All changes by date

Changes by version

These API specification versions may be used to indicate that a module requires a certain API feature in order to function. For example, if you see here a feature you need which is labelled 1.20, your manifest should contain in its main attributes the line:

OpenIDE-Module-Module-Dependencies: org.netbeans.modules.autoupdate.services > 1.20

Changes by affected class

org.netbeans.api.autoupdate.InstallSupport

org.netbeans.api.autoupdate.OperationContainer

org.netbeans.api.autoupdate.OperationException

org.netbeans.api.autoupdate.OperationSupport

org.netbeans.api.autoupdate.UpdateElement

org.netbeans.spi.autoupdate.UpdateItem

org.netbeans.api.autoupdate.UpdateUnit

org.netbeans.api.autoupdate.UpdateUnitProvider


Details of all changes by API and date


Autoupdate Services API

Find a visible ancestor of UpdateUnit

Oct 31 '12; API spec. version: 1.37; affected top-level classes: UpdateUnit; made by: jrechtacek; issues: #190246

Added a method {@link org.netbeans.api.autoupdate.UpdateUnit#getVisibleAncestor} which returns a visible plugin which depending upon this unit. Returns a unit if this unit is installed in the system and some of visible units depending upon this one, otherwise returns null.

Mark an update as preferred just if needed

May 16 '12; API spec. version: 1.33; affected top-level classes: UpdateItem; made by: jrechtacek; issues: #211734

Added a preferredupdate attribute into Update Center Descriptor to specify if an update has to be installed before other updates or not. This flag is off as default.

Added a method to get a descprition of content of Upadate Center

May 16 '12; API spec. version: 1.33; affected top-level classes: UpdateUnitProvider; made by: jrechtacek; issues: #211741

{@link org.netbeans.api.autoupdate.UpdateUnitProvider#getContentDescription} returns a description of content staging by this provider. The description might contains HTML tags e.g. HTML Links.

Added a method to get ID of license agreement

May 16 '12; API spec. version: 1.33; affected top-level classes: UpdateElement; made by: jrechtacek; issues: #211736

Added a method {@link org.netbeans.api.autoupdate.UpdateElement#getLicenseId} to get ID of license agreement if the UpdateElement has a copyright.

This ID could be stored somewhere once an user approves the license and will not be asked for approval again the same license ID.

Check write permissions to installation directory

May 16 '12; API spec. version: 1.33; affected top-level classes: InstallSupport OperationException; made by: jrechtacek; issues: #211777

InstallSupport find out the right directory where a plugin should be installed. After that it checks if an user has privilege to write there. In the case a lack of write permission, throws {@link org.netbeans.api.autoupdate.OperationException.WRITE_PERMISSION}.

Beside this it allows to write into userdir as a fallback in the case of insufficient privilege.

Allowing to specify external NBM content size

May 14 '12; API spec. version: 1.32; made by: jlahoda; issues: #212068

You can now specify the size of the external NBM content in the .external file by using SIZE: property (e.g. SIZE:42). The size will then be incorporated in the download size of the NBM.

External NBM contents

Feb 10 '11; API spec. version: 1.24; made by: jtulach; issues: #195041

You can now ask that publicly downloadable files be included in an NBM. Just replace netbeans/file with a text file netbeans/file.external with lines:

  1. CRC:123456789 to specify an expected CRC-32 checksum (nonnegative decimal format)
  2. URL:http://.../... to specify a download location (may be repeated to offer alternatives)

You can embed system properties in a URL using Ant-like syntax: http://.../feature-for-${java.specification.version}.nbm

The <makenbm> Ant task will automatically avoid packing the actual file if the *.external variant is also in the input cluster.

For convenience, the org.netbeans.modules.maven.embedder module (if present) can also handle URLs of the forms m2:/org.grp:art:1.0:jar or m2:/org.grp:art:1.0:jar:javadoc which can take advantage of the local repository as a cache.

Icons for update centers

Jan 10 '11; API spec. version: 1.23; affected top-level classes: UpdateElement UpdateUnitProvider; made by: jtulach; issues: #183778

Define icon when specifying an update center using categoryIconBase attribute.

New operation type introduced together with method for create appropriate container

Aug 19 '09; API spec. version: 1.11; affected top-level classes: OperationSupport OperationContainer; made by: dlipin; issues: #141714

New operation type - OperationSupport.OperationType.INTERNAL_UPDATE is introduced. This operation can be used to find out elements which have updates and which the particular element has the dependency on.

Feature enabled only when all its dependencies are enabled

Apr 15 '09; API spec. version: 1.8; affected top-level classes: UpdateItem; made by: jtulach; issues: #162673

The behaviour of UpdateItem.createFeature().getInstalled().isEnabled() has been changed. Now it returns true only if all dependencies are enabled.


Built on September 2 2014.  |  Portions Copyright 1997-2014 Oracle. All rights reserved.