FLUID-3675: Create options merging and "component grading" infrastructure that will allow passage of destructible items

Metadata

Source
FLUID-3675
Type
New Feature
Priority
Major
Status
Closed
Resolution
Fixed
Assignee
Colin Clark
Reporter
Antranig Basman
Created
2010-06-17T20:20:12.340-0400
Updated
2011-05-16T15:26:00.104-0400
Versions
  1. 1.2
  2. 1.2.1
  3. 1.3
Fixed Versions
  1. 1.4
Component
  1. Framework

Description

It is increasingly required for a few "non-model-contract" items to be able to pass into components and survive the options merging process without being cloned. Ironically, one of these types of items are in fact models - whilst a model as a whole satisfies the "model contract", it is important for overall application model consistency for the SAME MODEL REFERENCE to survive being passed into a component unscathed. Reference consistency also requires implementation of a "cautious ChangeApplier" (see FLUID-3674). This should be implemented by
i) Allowing a new strategy to be configured into options merging, tentatively named "preserve" which will specify that certain "protected paths" in the model hold object references which must not be cloned, but copied across wholesale
ii) Creating infrastructure for "grades" or "categories" of component (model-bearing, view-bearing, renderer-bearing, or any valid combination of these) that spares users from the work of having to manually specify these in their own default options.

Comments

  • Justin Obara commented 2010-10-04T15:04:44.870-0400

    "Bug Parade Infusion 1.3"