Simon Nash wrote:
See inline.

  Simon

Raymond Feng wrote:
Hi,

I think Simon's proposal should work as follows instead of passing the properties to the createInvoker() call.

public interface Invoker {
   InvokerProperties getProperties(); // Contribute properties
}

public class InvokerProperties {
   public void setAllowsPassByReference(boolean allowsPBR) {
         ....
   }
   public boolean allowsPassByReference() {
       ....
   }

   // Add more properties without impacting the Invoker interface
   public AnotherPropertyType getAnotherProperty() {
          ...
   }

   public void setAnotherProperty(AnotherPropertyType anotherProp) {
        ...
   }
}

So the difference is whether having simple properties on the Invoker interface or defining a complex property as a collection of properties.

I'm not very keen on this modification to my proposal.  See [1] for
the reason why.

Anyway, since we have different opinions, I'm OK to have a vote to get it decided.

So far we have the following options on the table:

1) Add "allowsPassByReference()" to the Invoker interface directly
2) Add "getInvokerProperties()" to the Invoker interface directly and the InvokerProperties will encapasulate known properties including "allowsPassByReference". 3) Add "allowsPassByReference()" to an optional SPI (either a separate interface or a sub-interface of Invoker) 4) Add "getInvokerProperties()" to an optional SPI (either a separate interface or a sub-interface of Invoker)

Please add your options if I miss them before we call a vote.

Please add my proposal as described in [2] (using interfaces not classes,
and adding a parameter to the createInvoker() method).


This is going in circles :) If you add a parameter to createInvoker to pass an InvokerProperties... then I have two questions:
- who actually creates the InvokerProperties?
- can it still be an interface implemented by the extension?

--
Jean-Sebastien

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to