Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

For example, the Student fragment is configured with this element in dlm.xml

Code Block
xml
xml
borderStylesolid
titleStudent Fragment Configuration
borderStylesolid
xml
  <dlm:fragment name='Students' ownerID='student-lo' precedence='100'>
   <dlm:role>student</dlm:role>
   <dlm:audience evaluatorFactory='com.pipeline.uportal.dlm.provider.CPPersonEvaluatorFactory'>
     <paren mode="AND">     
       <attribute name='role' mode='equals' value='student'/>
       <paren mode="NOT">
         <attribute name='role' mode='equals' value='faculty'/>
       </paren>
     </paren>
   </dlm:audience>
 </dlm:fragment>

...

Note also the logging of user preference attributes including those from preference values set by fragment owners.

Code Block
xml
xml
borderStyledashed
titleSample Fragment Merging Debug Log Entries
borderStyledashed
xml
>>>> calling All Users.isApplicable( mboyd )
 ---- All Users.isApplicable( mboyd )=true
 >>>> calling Students.isApplicable( mboyd )
  >>>> calling paren[campuspipeline.uportal.dlm.provider.Paren@4e4a8a, op=OR].isApplicable()
  >>>> calling paren[campuspipeline.uportal.dlm.provider.Paren@7fc8b2, op=AND].isApplicable()
  >>>> calling Evaluator[role','1','student'].isApplicable()
 ----- comparing value 'student' to role 'admin'
 ----- comparing value 'student' to role 'faculty'
 Evaluating person roles to: false
  ---- Evaluator[role','1','student'].isApplicable()=false
  ---- paren[campuspipeline.uportal.dlm.provider.Paren@7fc8b2, op=AND].isApplicable()=false
  ---- paren[campuspipeline.uportal.dlm.provider.Paren@4e4a8a, op=OR].isApplicable()=false
 ---- Students.isApplicable( mboyd )=false
 >>>> calling Faculty.isApplicable( mboyd )
  >>>> calling paren[campuspipeline.uportal.dlm.provider.Paren@487093, op=OR].isApplicable()
  >>>> calling Evaluator['role','1','faculty'].isApplicable()
 ----- comparing value 'faculty' to role 'admin'
 ----- comparing value 'faculty' to role 'faculty'
 Evaluating person roles to: true
  ---- Evaluator[role','1','faculty'].isApplicable()=true
  ---- paren[campuspipeline.uportal.dlm.provider.Paren@487093, op=OR].isApplicable()=true
 ---- Faculty.isApplicable( mboyd )=true
 >>>> calling Employee.isApplicable( mboyd )
  >>>> calling paren[campuspipeline.uportal.dlm.provider.Paren@56c3cf, op=OR].isApplicable()
  >>>> calling Evaluator[role','1','employee'].isApplicable()
 ----- comparing value 'employee' to role 'admin'
 ----- comparing value 'employee' to role 'faculty'
 Evaluating person roles to: false
  ---- Evaluator[role','1','employee'].isApplicable()=false
  ---- paren[campuspipeline.uportal.dlm.provider.Paren@56c3cf, op=OR].isApplicable()=false
 ---- Employee.isApplicable( mboyd )=false

 ***** mboyd's StructureStylesheetUserPrefereneces

*** Folder Attributes
> n13.width = (33%) 33%
> s12.width = (33%) 33%
> u13l1s11.width = (null) 50%
> u11l1s12.width = (null) 50%
> u11l1s16.width = (null) 20%
> u11l1s9.width = (null) 30%
> u13l1s9.width = (null) 50%

*** Channel Attributes