Details

    • Sprint:
      Aconcagua Sprint 1, Aconcagua Sprint 2

      Description

      Currently, in EzPublishRestBundle, APILoader\Factory contains a lot of hardcoded stuff, including inputDispatchers, field type processors and response visitor dispatcher.

      These should be built in a compiler pass with a service tag, giving thus an extension point (the most critical point being the fieldtype processor).

        Issue Links

          Activity

          Hide
          Bertrand Dunogier added a comment -

          All done.

          Show
          Bertrand Dunogier added a comment - All done.
          Hide
          Bertrand Dunogier added a comment -
          Show
          Bertrand Dunogier added a comment - Added a documentation attempt: https://confluence.ez.no/display/EZP/Extending+the+REST+API .
          Hide
          Gaetano Giunta (Inactive) added a comment -

          Not sure if this is the case by looking at the most recent version of that code - but I hope that all loading is now lazily done.
          The version of factory which was in 5.1 was instanciating a million unused dispatchers on every REST call

          Show
          Gaetano Giunta (Inactive) added a comment - Not sure if this is the case by looking at the most recent version of that code - but I hope that all loading is now lazily done. The version of factory which was in 5.1 was instanciating a million unused dispatchers on every REST call
          Hide
          Bertrand Dunogier added a comment -

          Nope, it still instantiate them, like most classes. Lazy loading is added to Symfony 2.3, which we don't require yet, but I am not sure we will use it for everything.

          Fortunately the visitors or input parsers do absolutely nothing upon construction, and don't use that much memory.

          Show
          Bertrand Dunogier added a comment - Nope, it still instantiate them, like most classes. Lazy loading is added to Symfony 2.3, which we don't require yet, but I am not sure we will use it for everything. Fortunately the visitors or input parsers do absolutely nothing upon construction, and don't use that much memory.
          Hide
          Bertrand Dunogier added a comment -

          I am attaching a working example.

          Your bundle had a few issues, mostly structure, leading to some files not being loaded.

          This one should works as expected.

          Show
          Bertrand Dunogier added a comment - I am attaching a working example. Your bundle had a few issues, mostly structure, leading to some files not being loaded. This one should works as expected.
          Hide
          Bertrand Dunogier added a comment -

          Made a few changes to the doc. Not exactly the ones you pointed out, but it should be consistent now.

          Show
          Bertrand Dunogier added a comment - Made a few changes to the doc. Not exactly the ones you pointed out, but it should be consistent now.
          Hide
          Bertrand Dunogier added a comment -

          Resources should be at the Bundle's root. Controller can be anywhere, but usually is at the root of the bundle as well (if declared as a controller as a service, you can locate it anywhere).

          Show
          Bertrand Dunogier added a comment - Resources should be at the Bundle's root. Controller can be anywhere, but usually is at the root of the bundle as well (if declared as a controller as a service, you can locate it anywhere).
          Hide
          Marcos Loureiro (Inactive) added a comment -

          QA Approved

          Show
          Marcos Loureiro (Inactive) added a comment - QA Approved

            People

            • Assignee:
              Unassigned
              Reporter:
              Jérôme Vieilledent (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 1 week, 6 hours Original Estimate - 1 week, 6 hours
                1w 6h
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 2 weeks, 4 hours, 30 minutes
                2w 4h 30m

                  Agile