major
nice-to-have
defect
major
enhancement
(Nutzer-sichtbar)
Aktuell müssen Option-Provider immer in Code gegossen werden. Schick wäre es, wenn man zumindest für die Geradeausfälle die Option-Provider und Constraints auch über eine Expression direkt in der Administration angeben könnte.
Verwendung
#!xml
<config service-class="com.top_logic.element.meta.kbbased.filtergen.FilterFactory">
<instance>
<filters>
<filter name="IsAssignable">
<filter-by-expression
predicate="self -> value -> $value.get(`DemoTypes:DemoTypes.C.All#isAssignable`)"/>
</filter>
</filters>
</instance>
</config>
Bzw.:
#!xml
<config service-class="com.top_logic.element.meta.kbbased.filtergen.GeneratorFactory">
<instance>
<generators>
<generator name="Siblings">
<options-by-expression
function="self -> $self.get(`tl.element:StructuredElement#parent`).get(`tl.element:StructuredElementContainer#children`).filter(s -> $s != $self)"
/>
</generator>
</generators>
</instance>
</config>
Code-Migration
Umstellung der Konfiguration der GeneratorFactory um konsistent mit der Konfiguration der FilterFactory zu werden:
#!patch ### Eclipse Workspace Patch 1.0 #P com.top_logic.project.pos Index: webapp/WEB-INF/conf/projectPosConf.config.xml =================================================================== --- webapp/WEB-INF/conf/projectPosConf.config.xml (revision 257558) +++ webapp/WEB-INF/conf/projectPosConf.config.xml (working copy) @@ -398,8 +398,8 @@ <config service-class="com.top_logic.element.meta.kbbased.filtergen.GeneratorFactory"> <instance class="com.top_logic.element.meta.kbbased.filtergen.GeneratorFactory"> <generators> - <generator name="TemplateMilestoneGenerator" generator="com.top_logic.project.pos.template.project.template.TemplateMilestoneGenerator" /> - <generator name="MSMilestoneGenerator" generator="com.top_logic.milestone.layout.MilestoneGenerator"/> + <generator name="TemplateMilestoneGenerator" impl="com.top_logic.project.pos.template.project.template.TemplateMilestoneGenerator" /> + <generator name="MSMilestoneGenerator" impl="com.top_logic.milestone.layout.MilestoneGenerator"/> </generators> </instance> </config>
Test
- tl-demo: "Siblings"-Options und "IsAssignable"-Filter.