The following comment has been added to this issue:
Author: Christian Essl
Created: Thu, 5 Aug 2004 10:34 AM
Body:
The aggregate interface certainly solves the issues. However I think it comes
with two problems:
First you have to add a conceptual unnecessary interface, which increases
complexity and second you bind two things together just because of the current
implementation, which decreases flexibility.
My suggestion would be that an implementation can map to more than one service,
where the service represents one interface.
This would also come handy for interceptors. I.e. if you have a
SecurityInterceptor you would probably have different requirements for
live-cycle and business methods. If the interceptor does not support (interface
or method based) filtering you are lost, if it (certainly) does you have higher
setup needs and probably less performance. (IMO the same applies to other
interceptors as well).
I think the current one to one mapping of service to implementations, breaks a
main reason interfaces exist in Java: That implementations (classes) can
represent different out of hierarchy types and where the user is shielded from
not only how (that could be done with abstract classes) but also where the
types are implemented.
---------------------------------------------------------------------
View this comment:
http://issues.apache.org/jira/browse/HIVEMIND-39?page=comments#action_37063
---------------------------------------------------------------------
View the issue:
http://issues.apache.org/jira/browse/HIVEMIND-39
Here is an overview of the issue:
---------------------------------------------------------------------
Key: HIVEMIND-39
Summary: The ability to specify multiple interfaces of a service
Type: Wish
Status: Open
Priority: Minor
Project: HiveMind
Components:
framework
Versions:
1.0
Assignee: Howard M. Lewis Ship
Reporter: Zhengmao Hu
Created: Thu, 5 Aug 2004 7:24 AM
Updated: Thu, 5 Aug 2004 10:34 AM
Description:
(Sorry, because sending email to [EMAIL PROTECTED] can not make me subscribe,
so i post it here)
Currently, one service can only have one interface specifiled.
Inside ProxyBuilder.java, the proxy class built only implements this "major"
interface. This behavior is coded as such:
public ProxyBuilder(String type, ServicePoint point)
{
...
_classFab.addInterface(_serviceInterface);
...
}
public void addServiceMethods(String indirection)
{
...
Method[] methods = _serviceInterface.getMethods();
for (int i = 0; i < methods.length; i++) ...
...
}
Because of this behavior, if there is a class:
class ServiceABImpl implements ServiceA, ServiceB
This class will be wrapped inside a proxy class, but the proxy class can only
implement one interface, that makes the usage of this class/service
inconvienent.
So, there is a wish, wish that more than one interfaces can be specified to one
service.
---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]