Commons JXPath
  1. Commons JXPath
  2. JXPATH-96

Extract VariablePointerFactory interface

    Details

    • Type: New Feature New Feature
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.2 Final
    • Fix Version/s: 1.3
    • Labels:
      None

      Description

      Extract VariablePointerFactory interface from JXPathContextReferenceImpl, and pull up using of it to JXPathContext

      1. patch.txt
        9 kB
        Sergey Vladimirov
      2. VariablePointerFactoryTest.java
        2 kB
        Sergey Vladimirov

        Activity

        Hide
        Sergey Vladimirov added a comment -

        Implementation

        Show
        Sergey Vladimirov added a comment - Implementation
        Hide
        Sergey Vladimirov added a comment -

        Fixed copyrights

        Show
        Sergey Vladimirov added a comment - Fixed copyrights
        Hide
        Sergey Vladimirov added a comment -

        Test case

        Show
        Sergey Vladimirov added a comment - Test case
        Hide
        Matt Benson added a comment -

        There are many reasons this could not be implemented as requested. You have placed dependencies in JXPathContext upon NodePointer, etc., from the reference implementation. What I have done is change the RI such that it delegates the creation of variable pointers to the registered NodePointerFactories as it does with the other various nodes in a given graph, wrapping the context itself in a type that the new VariablePointerFactory NodePointerFactory implementation recognizes. Now you will extend the RI in much the same way as you would any other time you needed to add a custom NodePointerFactory, except that you will trigger your VariablePointerFactory, or replacement thereof, on the VariablePointerFactory.VariableContextWrapper bean type. Since the default implementation is now being used for the creation of VariablePointers the existing testcases validate that this functionality is working properly.

        Best,
        Matt

        Show
        Matt Benson added a comment - There are many reasons this could not be implemented as requested. You have placed dependencies in JXPathContext upon NodePointer, etc., from the reference implementation. What I have done is change the RI such that it delegates the creation of variable pointers to the registered NodePointerFactories as it does with the other various nodes in a given graph, wrapping the context itself in a type that the new VariablePointerFactory NodePointerFactory implementation recognizes. Now you will extend the RI in much the same way as you would any other time you needed to add a custom NodePointerFactory, except that you will trigger your VariablePointerFactory, or replacement thereof, on the VariablePointerFactory.VariableContextWrapper bean type. Since the default implementation is now being used for the creation of VariablePointers the existing testcases validate that this functionality is working properly. Best, Matt
        Hide
        Sergey Vladimirov added a comment -

        It will be nice to add test case to SVN as well
        As an example for me

        Show
        Sergey Vladimirov added a comment - It will be nice to add test case to SVN as well As an example for me

          People

          • Assignee:
            Matt Benson
            Reporter:
            Sergey Vladimirov
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development