Change NodeDescriptor filter attribute behaviour

Description

NodeDescriptor has both a filter and an archetypeRange attribute.
They contain essentially the same information except that:

  • archetypeRange is specified using an assertion

  • filter is specified as an attribute
    The archetypeRange is used to describe the archetypes that the NodeDescriptor may contain. However, when invoking the NodeDescriptor.getChildren() method, it is the filter that is used.

Ideally:

  • filter should be a shorthand version of specifying an archetypeRange assertion

  • it should be possible to specify either filter or archetypeRange, but not both

  • the getFilter() method should be deprecated in favour of the getArchetypeRange() method, which will return either the filter or the archetypeRange assertion, depending on what was specified

Environment

None

Status

Assignee

Tim Anderson

Reporter

Tim Anderson

Labels

None

Affects versions

Priority

Minor
Configure