Start page / Plug-In Development / Universal Extensions / Input Components / Value Processing / Value Engineer Aspects

Value Engineer Aspects

Value engineer aspects extend the functional abilities of an input component's value engineer class.

For example, a value engineer may

  • provide a set of differences between the component's stored value and another value in order to aid with difference visualization,
  • provide support for search and indexing by generating a text value for search and a set of matches based on a given request, or
  • apply rules to validate a value which is to be stored in order to react to invalid component data.

Providing Aspects

The aspect provisioning process occurs within the component's implementation of the interface ValueEngineer<T>. A method getAspect(...) must be implemented and provide an object which implements the requested aspect if available.

FirstSpirit occasionally calls the method getAspect(...) with various aspect types as a parameter to identify if the editor's value engineer class supports a given aspect. If the value engineer supports the requested aspect, the method should return an object which implements that aspect; otherwise, it should return null.

Value Engineer Aspects by Category

Value Engineer Aspects

Difference Computation

Aspect

Description

Methods / Notes

DifferenceComputing<T>

Computes differences between two given values of an input component for difference visualization (e.g. in the version comparison dialog in SiteArchitect).

List<Difference> computeDifferences(T actualValue, T oldValue)
produces a list of Difference objects which mark segments of the old and actual value objects as not changed, changed, inserted or deleted.

Note: required by the Swing gadget aspect DifferenceVisualizing (see SiteArchitect Gadget Aspects).

Indexing and Search

Aspect

Description

Methods / Notes

MatchSupporting<T>

Provides a text representation of a given value object and identified a list of matches within a given value object based on a request object.

List<? extends Match> getMatches(Request request, T value)
searches the given value object for matches (Match) of the given Request object.

ReferenceContaining<T>

Collects references (e.g. references to store elements or external URLs) within a given value object and provides a list of these references.

List<Reference> collectReferences(T value)
identifies all references within the value as Reference objects and returns a list containing these references.

   

© 2005 - 2024 Crownpeak Technology GmbH | All rights reserved. | FirstSpirit 2024.12 | Data privacy