facets.core.superficial
Interface Facetable

All Known Subinterfaces:
FacetedTarget, STargeter
All Known Implementing Classes:
ActionViewerTarget, AppSurface.ContentRoot, AreaTargeter, DialogSurface.ContentRoot, IndexingFrame.FrameTargeter, IndexingTargeter, SAreaTarget, SContentRootTargeter, TargeterCore, ViewerTarget

public interface Facetable

Application element that may have an attached facet.

Facetable captures the concept of an object that can have one or more facets attached to it, which it applies during each retargeting sequence.

No provision is made for removing attached facets, on the assumption that these are costly to create.


Method Summary
 void attachFacet(SFacet facet)
          Attach a facet.
 void retargetFacets(Notifying.Impact impact)
          Retarget any attached facets.
 

Method Detail

attachFacet

void attachFacet(SFacet facet)
Attach a facet.

Implementors should allow either a single (and thereafter immutable) facet or an unlimited number.

Parameters:
facet - will be applied during each retargeting sequence

retargetFacets

void retargetFacets(Notifying.Impact impact)
Retarget any attached facets.

Facets (if any) will have been attached with attachFacet(SFacet)