XFire
  1. XFire
  2. XFIRE-367

Excluded methods mechanism used in the ObjectServiceFactory doesn't seem to work

    Details

    • Type: Improvement Improvement
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: 1.1-beta-1
    • Fix Version/s: None
    • Component/s: Core
    • Labels:
      None
    • Number of attachments :
      0

      Description

      When ObjectServiceFactory creates its operations it seems to incorrectly evaluated which methods to exclude. the current method -

      protected boolean isValidMethod(final Method method)

      { if(ignoredClasses.contains(method.getDeclaringClass().getName())) return false; final int modifiers = method.getModifiers(); return Modifier.isPublic(modifiers) && !Modifier.isStatic(modifiers); }

      Doesn't work for custom ignorred classes where the ignorred class is an interface. In this scenario the method.getDeclaringClass() does not return the Inteface name, but the FQN of the service class. We're currently using a modified ObjectFactory that just compares the method names.

        Activity

        Hide
        Dan Diephouse added a comment -

        Is your service class a concrete class (as opposed to an interface)? Thanks

        Show
        Dan Diephouse added a comment - Is your service class a concrete class (as opposed to an interface)? Thanks
        Hide
        rossmason rossmason added a comment -

        Hi Dan,

        Its a concrete class. It now makes sense why or methods are not excluded.

        Cheers,

        Ross

        Show
        rossmason rossmason added a comment - Hi Dan, Its a concrete class. It now makes sense why or methods are not excluded. Cheers, Ross

          People

          • Assignee:
            Dan Diephouse
            Reporter:
            rossmason rossmason
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: