jersey
  1. jersey
  2. JERSEY-1570

Resoure.from(Object resource, List<ResourceModelIssue> issueList) does not create Resource based on instance (Object resource)

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Critical Critical
    • Resolution: Works as designed
    • Affects Version/s: None
    • Fix Version/s: 2.0-m11, 2.0
    • Component/s: None
    • Labels:
      None

      Description

      This code does not store instance but only uses the class of the instance (the instance is ignored):

          public static Resource from(Object resource, List<ResourceModelIssue> issueList) {
              final Builder builder = new IntrospectionModeller(resource.getClass(), issueList).createResourceBuilder(true);
              return builder.isEmpty() ? null : builder.build();
          }
      

      MethodHadnler is then class based and not instance based.

      The instance should be kept and used for request dispatching.

        Activity

        Miroslav Fuksa created issue -
        Martin Matula made changes -
        Field Original Value New Value
        Fix Version/s 2.0-m11 [ 16165 ]
        Fix Version/s 2.0 [ 15271 ]
        Fix Version/s 2.0-unplanned [ 15288 ]
        Pavel Bucek made changes -
        Fix Version/s 2.0 [ 15271 ]
        Fix Version/s 2.0-m11 [ 16171 ]
        Fix Version/s 2.0-m11-tmp [ 16165 ]
        Miroslav Fuksa logged work - 03/Dec/12 4:23 PM
        • Time Spent:
          2 hours
           
          implemented
        Miroslav Fuksa made changes -
        Assignee mfuksa [ mfuksa ]
        Miroslav Fuksa made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        Miroslav Fuksa made changes -
        Remaining Estimate 3 hours [ 10800 ] 1 hour [ 3600 ]
        Time Spent 2 hours [ 7200 ]
        Hide
        Miroslav Fuksa added a comment -

        Finally agreed with Marek that the current functionality works as desired. We do not want to create Resources which have instance based Method Handler. Preferable way it to create class based resources and register instance as a singleton.

        So, current methods (Resource.from(Object) and Resource.builder(Object)) are really intended to create class based method handlers.

        Show
        Miroslav Fuksa added a comment - Finally agreed with Marek that the current functionality works as desired. We do not want to create Resources which have instance based Method Handler. Preferable way it to create class based resources and register instance as a singleton. So, current methods (Resource.from(Object) and Resource.builder(Object)) are really intended to create class based method handlers.
        Miroslav Fuksa made changes -
        Status In Progress [ 3 ] Resolved [ 5 ]
        Resolution Works as designed [ 7 ]
        Marek Potociar logged work - 12/Dec/12 4:22 PM
        • Time Spent:
          1 hour
           
          Updated patch.
        Marek Potociar made changes -
        Remaining Estimate 1 hour [ 3600 ] 0 minutes [ 0 ]
        Time Spent 2 hours [ 7200 ] 3 hours [ 10800 ]

          People

          • Assignee:
            Miroslav Fuksa
            Reporter:
            Miroslav Fuksa
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 3 hours
              3h
              Remaining:
              Remaining Estimate - 0 minutes
              0m
              Logged:
              Time Spent - 3 hours
              3h