@xsnapshot Tag Reference

Tags for generating snapshot and helper objects from model objects

Applies to: All classes, at class level and on getter methods

@xsnapshot Class Level Tags

@xsnapshot.snapshot-class

@xsnapshot Field Level Tags

@xsnapshot Class Level Tag Usage

@xsnapshot.snapshot-class (0..*)

Used to specify a Snapshot object

Applies to: XSnapshot

ParameterTypeApplicabilityDescriptionMandatory
classtext Classname of the snapshot class. If not fully-qualified, assumed to be in the same package as the containing class, subject to package substitution. If omitted, the classname is constructed based on the snapshot name and model classname, using the pattern specified on the xsnapshotdoclet ant task. The default pattern is {snapshot_name}{model_classname}Snapshot, with the snapshot name being first converted to CamelCase. false
nametext Symbolic name for the snapshot, used to refer to it in property definitions and conversions. true
extendstext Specifies the superclass for the snapshot class. Use this parameter when extending a non-snapshot class. When extending another snapshot class, you should use the snapshot-extends and model-extends parameters instead. However, if extending a snapshot class for a model class whose source is unavailable at code generation time, you should use both the snapshot-extends/model-extends and this parameter. false
snapshot-extendstext Used in combination with model-extends to specify the superclass for the snapshot class. The value should be the name of the snapshot defined on the class specified by model-extends that the snapshot class extends. If this parameter is omitted and the model-extends parameter is specified, then the name of the current snapshot being defined is used as the value for this parameter. You must also specify a value for the model-extends parameter when using this parameter. false
model-extendstext Used in combination with snapshot-extends to specify the superclass for the snapshot class. The value should be the name of the model class on which the snapshot specified by snapshot-extends is defined. You can also use the special keywords this and super to refer to the current model class or the superclass of the current model class respectively. false
implementstext Used to specify the interfaces which the snapshot class should implement. This should be a comma-separated list of fully-qualified names of the interfaces. Snapshot classes automatically implement java.io.Serializable, so it should not be included in this list. false
equalstext Controls the generation of the equals, hashCode, and compareTo methods (the latter generated only if Comparable is included in list of interfaces for the implements parameter). Use none to not generate these methods automatically; reflection to use reflection to include all fields in the calculation; enumerated to specify the fields to be included in the calculations. Note that if none is used and the snapshot implements Comparable, then you must implement compareTo via a merge file; otherwise the generated snapshot class will not compile.

Default value(s):

none
Valid options are:

none

enumerated

reflection
false
tostringtext Controls the generation of the toString method. Use none to not generate this method automatically; reflection to use reflection to include all fields in the calculation; enumerated to specify the fields to be included in the calculations.

Default value(s):

reflection
Valid options are:

none

enumerated

reflection
false
helperbool Controls whether the helper class is generated for this snapshot. If false, then only the Snapshot class is generated.

Default value(s):

true
false
copy-to-modeltext Used to specify the policy for deciding which properties should be copied from snapshot to model for this snapshot class. The value can be one of five keywords, or the fully-qualified classname of a class that implements CopyToModelPolicy. The five keywords are shorthands for five predefined CopyToModelPolicy implementations: none - no properties should be copied from snapshot to model conservative - only simple properties that do not involve snapshot or nested property transformations should be copied moderate - simple properties, collections, arrays, and maps that do not involve snapshot or nested property transformations should be copied aggressive - simple properties, collections, arrays, and maps that do not involve nested property transformations should be copied all - all properties should be copied If this parameter is omitted, the default policy specified for the xsnapshotdoclet ant task will be used. false

@xsnapshot Method Level Tag Usage

@xsnapshot.array (0..*)

Used to specify an array-valued property for a snapshot when you wish to apply transformations to the individual elements in a collection during model-to-snapshot transformation

Applies to: should be placed on the getter method for the property in the model

ParameterTypeApplicabilityDescriptionMandatory
matchtext specifies which snapshots defined on this model class this property should be included in. Value should be a comma-separated list of snapshot names, or the special token * to indicate all snapshots true
nametext Used to explicitly specify a name for the property in the snapshot. If not specified, the name will be the same as in the model. false
gettertext Controls the generation of the getter method for the property in the snapshot. Use none to not generate a getter at all, or public/private/protected to generate the getter with the corresponding access modifier.

Default value(s):

public
Valid options are:

none

public

private

protected
false
settertext Controls the generation of the setter method for the property in the snapshot. Use none to not generate a setter at all, or public/private/protected to generate the setter with the corresponding access modifier.

Default value(s):

public
Valid options are:

none

public

private

protected
false
init-valuetext Used to assign an initial value to the field backing the property in the snapshot. value for this attribute should be the exact expression on the right-hand side of the assignment (ie in the snapshot the field will be declared as private [field_type] [field_name] = [value_of_init_value_attribute];). false
copy-to-modelbool Used to specify explicitly whether the property should be copied to the model. This overrides the copy to model policy in effect for the snapshot class. false
use-in-equalsbool Used to specify whether this property should be included in equals, hashCode, and compareTo calculations. Only has effect if the corresponding snapshot's equals generation method is enumerated

Default value(s):

false
false
equals-ordertext Used to specify the order in which this property should be considered when calculating equals, hashCode and compareTo. Only has effect if the corresponding snapshot's equals generation method is enumerated false
use-in-tostringbool Used to specify whether this property should be included in toString calculation. Only has effect if the corresponding snapshot's toString generation method is enumerated

Default value(s):

false
false
tostring-ordertext Used to specify the order in which this property should be considered in calculating toString. Only has effect if the corresponding snapshot's toString generation method is enumerated false
element-snapshottext Used to specify a snapshot on the elements of the model collection that will determine the type and value of the elements in the snapshot collection. The value of the element-snapshot parameter must be the name of a snapshot specified on the class of the elements of the model collection. false
element-nested-propertytext Specifies a possibly nested property of the elements of the model collection. The result of looking up that property for each element in the model collection will be the corresponding element in the snapshot collection, unless transformation is also specified. false
snapshot-element-typetext Used to specify the type of the elements in the snapshot collection explicitly. If you specify a value for this parameter, then you must also specify a value for the snapshot-element-transformer parameter. false
snapshot-element-transformertext Used to specify a transformation to be applied to the elements of the model collection before adding them to the snapshot collection. The value of this parameter can be either the fully-qualified classname of a class that implements net.sf.xsnapshot.Transformer or a symbolic name to be looked up via XSnapshotRegistry for which an instance of Transformer is registered. false
snapshot-element-transformer-arg-1text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-2text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-3text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-4text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-5text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-6text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-7text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-8text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-9text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-create-exprtext Used to specify explicitly the expression used to create a new instance of the collection backing the property in the snapshot. If not specified, if an init-value was specified for the property, it is used as the value of the collection; otherwise a new instance of a concrete collection class is created. The concrete class to use is determined based on the type of the property as follows: List->ArrayList, SortedSet->TreeSet, Set->HashSet, Collection->ArrayList. false
model-element-typetext Used to specify the type of the elements in the model collection. TODO: describe when one needs to specify this. false
model-element-nested-typetext Used to specify the type of the result of looking up the nested property of elements in the model collection. You only need to specify this attribute in a special case: when using both nested property lookup and explicit transformation on elements of the collection, and the snapshot-to-model transformer requires a type hint. false
model-element-transformertext Used to specify a transformation to be applied to the elements of the snapshot collection before adding them to the model collection. The value of this parameter can be either the fully-qualified classname of a class that implements net.sf.xsnapshot.Transformer or a symbolic name to be looked up via XSnapshotRegistry for which an instance of Transformer is registered. false
model-element-transformer-arg-1text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-2text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-3text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-4text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-5text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-6text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-7text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-8text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-9text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-create-exprtext Used to specify explicitly the expression used to create a new instance of the collection backing the property in the model (when converting snapshot to model). If not specified, if a new instance of the model has a non-null value for the field backing the property, that is used, otherwise a new instance of a concrete collection class is created. The concrete class to use is determined based on the type of the property as follows: List->ArrayList, SortedSet->TreeSet, Set->HashSet, Collection->ArrayList. false

@xsnapshot.collection (0..*)

Used to specify a collection-valued property for a snapshot when you wish to apply transformations to the individual elements in a collection during model-to-snapshot transformation

Applies to: should be placed on the getter method for the property in the model

ParameterTypeApplicabilityDescriptionMandatory
matchtext specifies which snapshots defined on this model class this property should be included in. Value should be a comma-separated list of snapshot names, or the special token * to indicate all snapshots true
nametext Used to explicitly specify a name for the property in the snapshot. If not specified, the name will be the same as in the model. false
typetext Used to specify explicitly the type of the property in the snapshot. If not specified, the type will be the same as the type in the model. The value must be a class or interface that implements or extends java.util.Collection. false
gettertext Controls the generation of the getter method for the property in the snapshot. Use none to not generate a getter at all, or public/private/protected to generate the getter with the corresponding access modifier.

Default value(s):

public
Valid options are:

none

public

private

protected
false
settertext Controls the generation of the setter method for the property in the snapshot. Use none to not generate a setter at all, or public/private/protected to generate the setter with the corresponding access modifier.

Default value(s):

public
Valid options are:

none

public

private

protected
false
init-valuetext Used to assign an initial value to the field backing the property in the snapshot. value for this attribute should be the exact expression on the right-hand side of the assignment (ie in the snapshot the field will be declared as private [field_type] [field_name] = [value_of_init_value_attribute];). false
copy-to-modelbool Used to specify explicitly whether the property should be copied to the model. This overrides the copy to model policy in effect for the snapshot class. false
use-in-equalsbool Used to specify whether this property should be included in equals, hashCode, and compareTo calculations. Only has effect if the corresponding snapshot's equals generation method is enumerated

Default value(s):

false
false
equals-ordertext Used to specify the order in which this property should be considered when calculating equals, hashCode and compareTo. Only has effect if the corresponding snapshot's equals generation method is enumerated false
use-in-tostringbool Used to specify whether this property should be included in toString calculation. Only has effect if the corresponding snapshot's toString generation method is enumerated

Default value(s):

false
false
tostring-ordertext Used to specify the order in which this property should be considered in calculating toString. Only has effect if the corresponding snapshot's toString generation method is enumerated false
element-snapshottext Used to specify a snapshot on the elements of the model collection that will determine the type and value of the elements in the snapshot collection. The value of the element-snapshot parameter must be the name of a snapshot specified on the class of the elements of the model collection. false
element-nested-propertytext Specifies a possibly nested property of the elements of the model collection. The result of looking up that property for each element in the model collection will be the corresponding element in the snapshot collection, unless transformation is also specified. false
snapshot-element-typetext Used to specify the type of the elements in the snapshot collection explicitly. If you specify a value for this parameter, then you must also specify a value for the snapshot-element-transformer parameter. false
snapshot-element-transformertext Used to specify a transformation to be applied to the elements of the model collection before adding them to the snapshot collection. The value of this parameter can be either the fully-qualified classname of a class that implements net.sf.xsnapshot.Transformer or a symbolic name to be looked up via XSnapshotRegistry for which an instance of Transformer is registered. false
snapshot-element-transformer-arg-1text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-2text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-3text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-4text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-5text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-6text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-7text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-8text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-element-transformer-arg-9text Used to supply an argument to the Transformer specified by snapshot-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-create-exprtext Used to specify explicitly the expression used to create a new instance of the collection backing the property in the snapshot. If not specified, if an init-value was specified for the property, it is used as the value of the collection; otherwise a new instance of a concrete collection class is created. The concrete class to use is determined based on the type of the property as follows: List->ArrayList, SortedSet->TreeSet, Set->HashSet, Collection->ArrayList. false
model-element-typetext Used to specify the type of the elements in the model collection. TODO: describe when one needs to specify this. false
model-element-nested-typetext Used to specify the type of the result of looking up the nested property of elements in the model collection. You only need to specify this attribute in a special case: when using both nested property lookup and explicit transformation on elements of the collection, and the snapshot-to-model transformer requires a type hint. false
model-element-transformertext Used to specify a transformation to be applied to the elements of the snapshot collection before adding them to the model collection. The value of this parameter can be either the fully-qualified classname of a class that implements net.sf.xsnapshot.Transformer or a symbolic name to be looked up via XSnapshotRegistry for which an instance of Transformer is registered. false
model-element-transformer-arg-1text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-2text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-3text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-4text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-5text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-6text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-7text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-8text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-element-transformer-arg-9text Used to supply an argument to the Transformer specified by model-element-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-create-exprtext Used to specify explicitly the expression used to create a new instance of the collection backing the property in the model (when converting snapshot to model). If not specified, if a new instance of the model has a non-null value for the field backing the property, that is used, otherwise a new instance of a concrete collection class is created. The concrete class to use is determined based on the type of the property as follows: List->ArrayList, SortedSet->TreeSet, Set->HashSet, Collection->ArrayList. false

@xsnapshot.map (0..*)

Used to specify a map-valued property for a snapshot when wishing to apply transformations to individual keys and/or values of the map

Applies to: should be placed on the getter method for the property in the model

ParameterTypeApplicabilityDescriptionMandatory
matchtext specifies which snapshots defined on this model class this property should be included in. Value should be a comma-separated list of snapshot names, or the special token * to indicate all snapshots true
nametext Used to explicitly specify a name for the property in the snapshot. If not specified, the name will be the same as in the model. false
gettertext Controls the generation of the getter method for the property in the snapshot. Use none to not generate a getter at all, or public/private/protected to generate the getter with the corresponding access modifier.

Default value(s):

public
Valid options are:

none

public

private

protected
false
settertext Controls the generation of the setter method for the property in the snapshot. Use none to not generate a setter at all, or public/private/protected to generate the setter with the corresponding access modifier.

Default value(s):

public
Valid options are:

none

public

private

protected
false
init-valuetext Used to assign an initial value to the field backing the property in the snapshot. value for this attribute should be the exact expression on the right-hand side of the assignment (ie in the snapshot the field will be declared as private [field_type] [field_name] = [value_of_init_value_attribute];). false
copy-to-modelbool Used to specify explicitly whether the property should be copied to the model. This overrides the copy to model policy in effect for the snapshot class. false
use-in-equalsbool Used to specify whether this property should be included in equals, hashCode, and compareTo calculations. Only has effect if the corresponding snapshot's equals generation method is enumerated

Default value(s):

false
false
equals-ordertext Used to specify the order in which this property should be considered when calculating equals, hashCode and compareTo. Only has effect if the corresponding snapshot's equals generation method is enumerated false
use-in-tostringbool Used to specify whether this property should be included in toString calculation. Only has effect if the corresponding snapshot's toString generation method is enumerated

Default value(s):

false
false
tostring-ordertext Used to specify the order in which this property should be considered in calculating toString. Only has effect if the corresponding snapshot's toString generation method is enumerated false
typetext Used to specify explicitly the declared type of the property in the snapshot. It must be either a class that implements java.util.Map or an interface that extends java.util.Map. If not specified, the type is assumed to be the same as the type of the property in the model. false
key-snapshottext Used to specify a snapshot on the keys of the model map that will determine the type and value of the keys in the snapshot map. The value of the key-snapshot parameter must be the name of a snapshot specified on the class of the keys of the model map. false
value-snapshottext Used to specify a snapshot on the values of the model map that will determine the type and value of the values in the snapshot map. The value of the value-snapshot parameter must be the name of a snapshot specified on the class of the values of the model map. false
key-nested-propertytext Specifies a possibly nested property of the keys of the model map. The result of looking up that property for each key in the model map will be the corresponding key in the snapshot map, unless transformation is also specified. false
value-nested-propertytext Specifies a possibly nested property of the values of the model map. The result of looking up that property for each value in the model map will be the corresponding value in the snapshot map, unless transformation is also specified. false
snapshot-key-typetext Used to specify the type of the keys in the snapshot map explicitly. If you specify a value for this parameter, then you must also specify a value for the snapshot-key-transformer parameter. false
snapshot-key-transformertext Used to specify a transformation to be applied to the keys of the model map before putting them in the snapshot map. The value of this parameter can be either the fully-qualified classname of a class that implements net.sf.xsnapshot.Transformer or a symbolic name to be looked up via XSnapshotRegistry for which an instance of Transformer is registered. false
snapshot-key-transformer-arg-1text Used to supply an argument to the Transformer specified by snapshot-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-key-transformer-arg-2text Used to supply an argument to the Transformer specified by snapshot-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-key-transformer-arg-3text Used to supply an argument to the Transformer specified by snapshot-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-key-transformer-arg-4text Used to supply an argument to the Transformer specified by snapshot-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-key-transformer-arg-5text Used to supply an argument to the Transformer specified by snapshot-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-key-transformer-arg-6text Used to supply an argument to the Transformer specified by snapshot-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-key-transformer-arg-7text Used to supply an argument to the Transformer specified by snapshot-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-key-transformer-arg-8text Used to supply an argument to the Transformer specified by snapshot-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-key-transformer-arg-9text Used to supply an argument to the Transformer specified by snapshot-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-value-typetext Used to specify the type of the values in the snapshot map explicitly. If you specify a value for this parameter, then you must also specify a value for the snapshot-value-transformer parameter. false
snapshot-value-transformertext Used to specify a transformation to be applied to the values of the model map before putting them in the snapshot map. The value of this parameter can be either the fully-qualified classname of a class that implements net.sf.xsnapshot.Transformer or a symbolic name to be looked up via XSnapshotRegistry for which an instance of Transformer is registered. false
snapshot-value-transformer-arg-1text Used to supply an argument to the Transformer specified by snapshot-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-value-transformer-arg-2text Used to supply an argument to the Transformer specified by snapshot-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-value-transformer-arg-3text Used to supply an argument to the Transformer specified by snapshot-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-value-transformer-arg-4text Used to supply an argument to the Transformer specified by snapshot-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-value-transformer-arg-5text Used to supply an argument to the Transformer specified by snapshot-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-value-transformer-arg-6text Used to supply an argument to the Transformer specified by snapshot-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-value-transformer-arg-7text Used to supply an argument to the Transformer specified by snapshot-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-value-transformer-arg-8text Used to supply an argument to the Transformer specified by snapshot-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-value-transformer-arg-9text Used to supply an argument to the Transformer specified by snapshot-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-create-exprtext Used to specify explicitly the expression used to create a new instance of the map backing the property in the snapshot. If not specified, if an init-value was specified for the property, it is used as the value of the map; otherwise a new instance of a concrete map class is created. The concrete class to use is determined based on the type of the property as follows: SortedMap->TreeMap, Map->HashMap. false
model-key-typetext Used to specify the type of keys in the model map. TODO: describe when one needs to specify this. false
model-value-typetext Used to specify the type of values in the model map. TODO: describe when one needs to specify this. false
model-key-nested-typetext Used to specify the type of the result of looking up the nested property of keys in the model map. You only need to specify this attribute in a special case: when using both nested property lookup and explicit transformation on the keys of the map, and the snapshot-to-model transformer requires a type hint. false
model-value-nested-typetext Used to specify the type of the result of looking up the nested property of values in the model map. You only need to specify this attribute in a special case: when using both nested property lookup and explicit transformation on the value of the map, and the snapshot-to-model transformer requires a type hint. false
model-key-transformertext Used to specify a transformation to be applied to the keys of the snapshot map before putting them in the model map. The value of this parameter can be either the fully-qualified classname of a class that implements net.sf.xsnapshot.Transformer or a symbolic name to be looked up via XSnapshotRegistry for which an instance of Transformer is registered. false
model-key-transformer-arg-1text Used to supply an argument to the Transformer specified by model-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-key-transformer-arg-2text Used to supply an argument to the Transformer specified by model-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-key-transformer-arg-3text Used to supply an argument to the Transformer specified by model-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-key-transformer-arg-4text Used to supply an argument to the Transformer specified by model-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-key-transformer-arg-5text Used to supply an argument to the Transformer specified by model-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-key-transformer-arg-6text Used to supply an argument to the Transformer specified by model-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-key-transformer-arg-7text Used to supply an argument to the Transformer specified by model-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-key-transformer-arg-8text Used to supply an argument to the Transformer specified by model-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-key-transformer-arg-9text Used to supply an argument to the Transformer specified by model-key-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-value-transformertext Used to specify a transformation to be applied to the values of the snapshot map before putting them in the model map. The value of this parameter can be either the fully-qualified classname of a class that implements net.sf.xsnapshot.Transformer or a symbolic name to be looked up via XSnapshotRegistry for which an instance of Transformer is registered. false
model-value-transformer-arg-1text Used to supply an argument to the Transformer specified by model-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-value-transformer-arg-2text Used to supply an argument to the Transformer specified by model-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-value-transformer-arg-3text Used to supply an argument to the Transformer specified by model-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-value-transformer-arg-4text Used to supply an argument to the Transformer specified by model-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-value-transformer-arg-5text Used to supply an argument to the Transformer specified by model-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-value-transformer-arg-6text Used to supply an argument to the Transformer specified by model-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-value-transformer-arg-7text Used to supply an argument to the Transformer specified by model-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-value-transformer-arg-8text Used to supply an argument to the Transformer specified by model-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-value-transformer-arg-9text Used to supply an argument to the Transformer specified by model-value-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-create-exprtext Used to specify explicitly the expression used to create a new instance of the map backing the property in the model (when converting snapshot to model). If not specified, if a new instance of the model has a non-null value for the field backing the property, that is used, otherwise a new instance of a concrete map class is created. The concrete class to use is determined based on the type of the property as follows: SortedMap->TreeMap, Map->HashMap. false

@xsnapshot.property (0..*)

Used to specify a simple property for a snapshot

Applies to: should be placed on the getter method for the property in the model

ParameterTypeApplicabilityDescriptionMandatory
matchtext specifies which snapshots defined on this model class this property should be included in. Value should be a comma-separated list of snapshot names, or the special token * to indicate all snapshots true
nametext Used to explicitly specify a name for the property in the snapshot. If not specified, the name will be the same as in the model. false
typetext Used to specify explicitly the type of the property in the snapshot. If not specified, the type of the property in the snapshot is taken to be the same as in the model. If you specify a value for this parameter, then you must also specify a value for the snapshot-converter parameter, and either specify a value for the model-converter parameter or set the value of the copy-to-model parameter to be false. The value can be either a valid Java classname or a primitive type. false
gettertext Controls the generation of the getter method for the property in the snapshot. Use none to not generate a getter at all, or public/private/protected to generate the getter with the corresponding access modifier.

Default value(s):

public
Valid options are:

none

public

private

protected
false
settertext Controls the generation of the setter method for the property in the snapshot. Use none to not generate a setter at all, or public/private/protected to generate the setter with the corresponding access modifier.

Default value(s):

public
Valid options are:

none

public

private

protected
false
init-valuetext Used to assign an initial value to the field backing the property in the snapshot. value for this attribute should be the exact expression on the right-hand side of the assignment (ie in the snapshot the field will be declared as private [field_type] [field_name] = [value_of_init_value_attribute];). false
copy-to-modelbool Used to specify explicitly whether the property should be copied to the model. This overrides the copy to model policy in effect for the snapshot class. false
use-in-equalsbool Used to specify whether this property should be included in equals, hashCode, and compareTo calculations. Only has effect if the corresponding snapshot's equals generation method is enumerated

Default value(s):

false
false
equals-ordertext Used to specify the order in which this property should be considered when calculating equals, hashCode and compareTo. Only has effect if the corresponding snapshot's equals generation method is enumerated false
use-in-tostringbool Used to specify whether this property should be included in toString calculation. Only has effect if the corresponding snapshot's toString generation method is enumerated

Default value(s):

false
false
tostring-ordertext Used to specify the order in which this property should be considered in calculating toString. Only has effect if the corresponding snapshot's toString generation method is enumerated false
snapshottext Used to specify a snapshot on the value of the model property that will determine the type and value of the property in the snapshot. The value of the parameter should be the name of the snapshot. false
nested-propertytext Specifies a possibly nested property of the value returned by the model property. The result of looking up that property becomes the value of the property in the snapshot, unless transformation is also specified. false
snapshot-transformertext Used to specify a transformation on the value returned by the model property that will return the value for the property in the snapshot. The value of this parameter can be either the fully-qualified classname of a class that implements net.sf.xsnapshot.Transformer or a symbolic name to be looked up via XSnapshotRegistry for which an instance of Transformer is registered. false
snapshot-transformer-arg-1text Used to supply an argument to the Transformer specified by snapshot-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-transformer-arg-2text Used to supply an argument to the Transformer specified by snapshot-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-transformer-arg-3text Used to supply an argument to the Transformer specified by snapshot-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-transformer-arg-4text Used to supply an argument to the Transformer specified by snapshot-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-transformer-arg-5text Used to supply an argument to the Transformer specified by snapshot-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-transformer-arg-6text Used to supply an argument to the Transformer specified by snapshot-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-transformer-arg-7text Used to supply an argument to the Transformer specified by snapshot-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-transformer-arg-8text Used to supply an argument to the Transformer specified by snapshot-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
snapshot-transformer-arg-9text Used to supply an argument to the Transformer specified by snapshot-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-transformertext Used to specify the inverse transformation to that specified by snapshot-transformer, that will be applied to the value of the snapshot property when copying it to the model. The semantics of this parameter are the same as that for snapshot-transformer. false
model-transformer-arg-1text Used to supply an argument to the Transformer specified by model-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-transformer-arg-2text Used to supply an argument to the Transformer specified by model-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-transformer-arg-3text Used to supply an argument to the Transformer specified by model-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-transformer-arg-4text Used to supply an argument to the Transformer specified by model-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-transformer-arg-5text Used to supply an argument to the Transformer specified by model-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-transformer-arg-6text Used to supply an argument to the Transformer specified by model-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-transformer-arg-7text Used to supply an argument to the Transformer specified by model-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-transformer-arg-8text Used to supply an argument to the Transformer specified by model-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false
model-transformer-arg-9text Used to supply an argument to the Transformer specified by model-transformer. The number and meaning of each argument is up to the individual Transformer implementations to specify. false

@xsnapshot Field Level Tag Usage