Petals Distribution

Remove dependencies to Saxon and to easycommons-utils from petals-log

Details

  • Type: Task Task
  • Status: Resolved Resolved
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 4.3.0-beta-1
  • Fix Version/s: 5.0.0-M1
  • Component/s: Tools
  • Security Level: Public
  • Description:
    Hide

    petals-log depends on easycommons-utils which have a static pool of Transformers used all across petals and the components.

    petals-log is present in the system classloader so the same pool is used everywhere even though components could desire to use another transformer implementation than the default one (Saxon).

    Hence, we should remove the dependency to easycommons-utils and Saxon-HE from petals-log.

    To replace the pool, we will use for now a threadlocal Transformer.
    This means one Transformer per thread to prevent concurrent access as well as permit each thread (and thus each component) to have its desired implementation.
    This means a small impact on performance during thread creation but in components threads are reused and the transformer implementation doesn't need to change so it's ok.

    Show
    petals-log depends on easycommons-utils which have a static pool of Transformers used all across petals and the components. petals-log is present in the system classloader so the same pool is used everywhere even though components could desire to use another transformer implementation than the default one (Saxon). Hence, we should remove the dependency to easycommons-utils and Saxon-HE from petals-log. To replace the pool, we will use for now a threadlocal Transformer. This means one Transformer per thread to prevent concurrent access as well as permit each thread (and thus each component) to have its desired implementation. This means a small impact on performance during thread creation but in components threads are reused and the transformer implementation doesn't need to change so it's ok.
  • Environment:
    -

Issue Links

Activity

People

Dates

  • Created:
    Fri, 3 Jul 2015 - 13:30:56 +0200
    Updated:
    Tue, 6 Oct 2015 - 11:12:39 +0200
    Resolved:
    Fri, 10 Jul 2015 - 13:39:51 +0200