Project

General

Profile

Actions

feature request #7932

open

Implement subject resolver for CdmPreferences

Added by Andreas Müller about 4 years ago. Updated 12 months ago.

Status:
Resolved
Priority:
Priority14
Category:
cdmlib
Target version:
Start date:
Due date:
% Done:

30%

Estimated time:
Severity:
normal
Tags:

Description

Finding the best matching preference for preferences with same predicates but differing subjects is currently not yet implemented or only limited for subjects with taxonomic subtree preferences.

As handling preferences in application has shown that there is a need for caching preferences it is preferred to implement a best matching subject resolver that is DB independent.
This creates difficulties for tree filters like the taxonomic subtree filter where the subject may include the subtree uuid or the tree index. Using the subtree uuid is easier to maintain but requires on the fly creation of the tree index because only with the tree index one may be able to decide if a taxon is included or not. Using the tree index as part of the subject avoids this problem but is more difficult to maintain if a taxon node is moved or if it's higher taxonomy changes.

There are multiple possibilities to implement resolving

  1. easiest: all matching subjects must completely be included in the query subject, the longest subject winns
  2. middle: all parts of a matching subject must be in the query subject in the same order, but the query subject may include additional parts, not only at the end but also in the middle; for finding the best matching we start from the back, if the last part exists it is the best matching otherwise call recusively with the query subject shortened by the last part
  3. general: to match the query subject all parts of the subject must also be parts in the query subject no matter which order; finding the best matching works like in 2), the query subject is read from behind and whenever a subject includes the last part read it winns, otherwise start recursively

Related issues

Related to EDIT - feature request #7920: Possibility to define area specific status selectionFeedbackKatja Luther

Actions
Related to EDIT - feature request #8256: Show all status preferences as tableFeedbackKatja Luther

Actions
Related to EDIT - feature request #8309: Implement preferences with predicate and subject in local preferencesNewKatja Luther

Actions
Actions #1

Updated by Andreas Müller about 4 years ago

For now we implement solution 2.

Actions #2

Updated by Andreas Müller about 4 years ago

Actions #3

Updated by Andreas Müller about 4 years ago

  • Description updated (diff)
Actions #4

Updated by Andreas Müller about 4 years ago

  • Status changed from New to In Progress
Actions #5

Updated by Andreas Müller about 4 years ago

  • % Done changed from 0 to 30

Katja, Andreas, could you please integrate the resolver into your DBpref stores/caches? It is mostly implemented.

Actions #6

Updated by Andreas Müller almost 4 years ago

  • Target version changed from Release 5.5 to Release 5.6
Actions #7

Updated by Andreas Müller almost 4 years ago

  • Priority changed from New to Highest
Actions #8

Updated by Andreas Müller almost 4 years ago

  • Target version changed from Release 5.6 to Release 5.7

This is mostly done but untested therefore move to 5.7

Actions #9

Updated by Andreas Müller almost 4 years ago

  • Target version changed from Release 5.7 to Release 5.8
Actions #10

Updated by Andreas Müller over 3 years ago

Andreas K., do you already use the subject resolver in the preference cache you use for vaadin?

Actions #11

Updated by Andreas Müller over 3 years ago

Actions #12

Updated by Andreas Müller over 3 years ago

  • Related to feature request #8309: Implement preferences with predicate and subject in local preferences added
Actions #13

Updated by Andreas Kohlbecker over 3 years ago

Andreas Müller wrote:

Andreas K., do you already use the subject resolver in the preference cache you use for vaadin?

I guess you are referring by this to the PreferenceResolver. This is not being used in cdm-vaadin

Actions #14

Updated by Andreas Müller over 3 years ago

Andreas Kohlbecker wrote:

Andreas Müller wrote:

Andreas K., do you already use the subject resolver in the preference cache you use for vaadin?

I guess you are referring by this to the PreferenceResolver. This is not being used in cdm-vaadin

So we should create a ticket for this. Using preferences without handling the subjects correctly may create problems. And we already started with using different subjects for the same predicate in some databases.

Actions #15

Updated by Andreas Müller over 1 year ago

  • Status changed from In Progress to Resolved
  • Target version changed from Release 5.8 to Release 5.25

Needs to be reviewed and then moved back to 5.8. Open issues (also the one from note-14 should be moved to new ticket).

Actions #16

Updated by Andreas Müller over 1 year ago

  • Target version changed from Release 5.25 to Release 5.37
Actions #17

Updated by Andreas Müller over 1 year ago

  • Priority changed from Highest to Priority14
Actions #18

Updated by Andreas Müller over 1 year ago

  • Tags set to preferences
Actions #19

Updated by Andreas Müller over 1 year ago

  • Tags deleted (preferences)
  • Description updated (diff)
Actions #20

Updated by Andreas Müller over 1 year ago

  • Tags set to preferences
Actions #21

Updated by Andreas Müller 12 months ago

  • Target version changed from Release 5.37 to Release 5.38
Actions

Also available in: Atom PDF