com.orchestranetworks.service
Class ArchiveExportSpec

java.lang.Object
  extended bycom.orchestranetworks.service.ArchiveExportSpec

public class ArchiveExportSpec
extends Object

Defines the features of an archive export.

For being valid, an instance of this class must at least define a Archive target. The actual content of the archive is otherwise specified as follows.

Current home (branch or version)

If no change set has been specified by method setDifferencesBetweenHomes, then the current home will be the home on which the procedure is running ProcedureContext.doExportArchive(ArchiveExportSpec). Otherwise the current home is the home on right of DifferenceBetweenHomes.

Instances selection

If no selection is specified by method addInstance, then all the current home will be exported. Otherwise only instances specified by this method will be exported.

Change set inclusion

The call to method setDifferencesBetweenHomes will add the corresponding change set to the archive. If the resulting archive is then imported into another repository, the user will be able to specify precisely which changes he wants to merge.

Furthermore, the actual archive content can be "optimized" by method setDifferencesWithMinimalContentsOnRight.

See Also:
ProcedureContext.doExportArchive(ArchiveExportSpec)

Constructor Summary
ArchiveExportSpec()
           
 
Method Summary
 void addInstance(AdaptationName anAdaptation, boolean exportAllDescendants)
          Adds an instance to export.
 Archive getArchive()
          Returns the target container for export.
 DifferenceBetweenHomes getDifferencesBetweenHomes()
          Returns the change set to include in the archive.
 boolean isDifferencesWithMinimalContentsOnRight()
           
 void setArchive(Archive archive)
          Specifies the target container for export.
 void setDifferencesBetweenHomes(DifferenceBetweenHomes differencesBetweenHomes)
          Specifies the change set to include in the archive.
 void setDifferencesWithMinimalContentsOnRight(boolean minimal)
          Specifies whether the change set's right content is minimal in the archive.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ArchiveExportSpec

public ArchiveExportSpec()
Method Detail

addInstance

public void addInstance(AdaptationName anAdaptation,
                        boolean exportAllDescendants)
Adds an instance to export.

Parameters:
anAdaptation - reference of the instance to export
exportAllDescendants - indicates if the instance's descendants must be also exported.

getArchive

public Archive getArchive()
Returns the target container for export.


setArchive

public void setArchive(Archive archive)
Specifies the target container for export.


getDifferencesBetweenHomes

public DifferenceBetweenHomes getDifferencesBetweenHomes()
Returns the change set to include in the archive.


setDifferencesBetweenHomes

public void setDifferencesBetweenHomes(DifferenceBetweenHomes differencesBetweenHomes)
Specifies the change set to include in the archive.


isDifferencesWithMinimalContentsOnRight

public boolean isDifferencesWithMinimalContentsOnRight()
See Also:
setDifferencesWithMinimalContentsOnRight(boolean)

setDifferencesWithMinimalContentsOnRight

public void setDifferencesWithMinimalContentsOnRight(boolean minimal)
Specifies whether the change set's right content is minimal in the archive. More precisely, if minimal is true, then when a table or an instance has no differences, they are not exported. For large repositories with a relatively limted number of changes, this allows much better export performance and smaller archives.

If set to false (default), all the content on right is included in the archive. This option is more expensive however the archive has more information that can be utilized for importing to another repository whose life cycle do not require to be in phase with the one's exporting datas.

This method has no effects if no change set is specified (that is, if method setDifferencesBetweenHomes is not called).



(report a bug)
EBX.Platform 4.5.3 [0607:0001]
Copyright Orchestra Networks 2000-2008. All rights reserved.