Overview

# Introduction

This document lists changes made to the Ant Project API.

# Index of APIs

- Ant Project API

# 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.

- (Aug 28 '05) Semantic changes in the ReferenceHelper behavior

# All changes by date

- (Aug 28 '05) Semantic changes in the ReferenceHelper behavior
- (Jul 11 '05) Basic Support SPI for Project Delete/Copy/Rename/Move
- (Jan 16 '05) Support SPI for creating/storing Swing models for simple Ant properties
- (Jan 13 '05) AntArtifact enhancements
- (Jan 11 '05) Make ReferenceHelper.createForeignFileReference produce relative links based on properties
- (Dec 22 '04) Switched to major release version 1

# 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.project.ant/1 > 1.20

- (1.10) Semantic changes in the ReferenceHelper behavior
- (1.9) Basic Support SPI for Project Delete/Copy/Rename/Move
- (1.6) Support SPI for creating/storing Swing models for simple Ant properties
- (1.5) AntArtifact enhancements
- (1.4) Make ReferenceHelper.createForeignFileReference produce relative links based on properties
- (1.3) Switched to major release version 1

# Changes by affected class

## `org.netbeans.api.project.ant.AntArtifact`

- (Jan 13 '05) AntArtifact enhancements

## `org.netbeans.spi.project.support.ant.ReferenceHelper`

- (Jan 11 '05) Make ReferenceHelper.createForeignFileReference produce relative links based on properties

## `org.netbeans.spi.project.support.ant.ui.StoreGroup`

- (Jan 16 '05) Support SPI for creating/storing Swing models for simple Ant properties

# Details of all changes by API and date

## Ant Project API

### Semantic changes in the ReferenceHelper behavior

Aug 28 '05; API spec. version: 1.10; made by: tzezula; issues: #63401
The ReferenceHelper was changed to support better sharability of projects. The collocated references are stored both into the project properties (as relative) and private properties (as absolute)

### Basic Support SPI for Project Delete/Copy/Rename/Move

Jul 11 '05; API spec. version: 1.9; made by: jlahoda; issues: #51468
Added `AntProjectHelper.notifyDeleted()`. Added `ReferenceHelper.fixReferences`.

### Support SPI for creating/storing Swing models for simple Ant properties

Jan 16 '05; API spec. version: 1.6; affected top-level classes: `StoreGroup`; made by: phrebejk; issues: #49648
Introduced new class `StoreGroup` which is capable of creating Swing models for simple Ant project properties and storing modified values back into properties.

### AntArtifact enhancements

Jan 13 '05; API spec. version: 1.5; affected top-level classes: `AntArtifact`; made by: dkonecny; issues: #47788 #50484 #50092

Several enhancements of `AntArtifact` were implemented:

1. execution of an artifact's target can be customized by properties
2. an artifact can produce several build outputs
3. an Ant script path is not persisted as a URI, but as a string possibly containing Ant properties

`ReferenceHelper` was simplified as part of the implementation.

Compatibility:

New schema was defined, but upgrade from old schema to new one is realized only after some new features are used. If project's artifact does not define any properties for artifact nor produce multiple outputs and Ant script lies under the project's directory then old schema is always used. Once project start using some of these new features the schema will be upgraded automatically to new version. This affects any project type which is using ant/project module.

### Make ReferenceHelper.createForeignFileReference produce relative links based on properties

Jan 11 '05; API spec. version: 1.4; affected top-level classes: `ReferenceHelper`; made by: dkonecny; issues: #49550
`ReferenceHelper` should reuse external project folders as base directories for references it creates where appropriate. The new API allows addition or removal of these base folders.

### Switched to major release version 1

Dec 22 '04; API spec. version: 1.3; made by: jglick; issues: #51468

To indicate that this is now considered a stable API, the major release version was incremented to 1 from 0.

Compatibility:

Clients should begin requesting the new version to avoid a warning at startup.

Built on December 7 2006. | Portions Copyright 1997-2005 Sun Microsystems, Inc. All rights reserved.