[
https://issues.apache.org/jira/browse/CLEREZZA-939?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14089200#comment-14089200
]
Minto van der Sluis commented on CLEREZZA-939:
----------------------------------------------
Having had a look at ServiceFactory I came to the conclusion that is can not be
used.
Service binding is OSGI is based on the interface and filter specified. To
expose triple collection as a service 2 interfaces are being used (Graph,
MGraph and LockableMGraph) also a filter is used to specify the name of the
graph. This last part is actually preventing us from using the ServiceFactory.
If I read the OSGI spec correctly our ServiceFactory to supply the actual graph
will not work. This is because the ServiceFactory will not match the filter
specified by the service client. The filter that contains the graph name. The
ServiceFactory simply can not know the graph name in advance. And if it did we
loose the dynamic behaviour we're after.
So in my opinion only the current implementation as present in TcManager can be
done. In that case this issue is about separating the functionality out of
TcManager and making it optional.
Unless someone else has a bright idea ;-)
> Create separate service to register the triple Collections as services
> ----------------------------------------------------------------------
>
> Key: CLEREZZA-939
> URL: https://issues.apache.org/jira/browse/CLEREZZA-939
> Project: Clerezza
> Issue Type: Bug
> Reporter: Minto van der Sluis
> Assignee: Minto van der Sluis
>
> TcManager has functionality to register every triple collection (graph) as a
> service. As a result bundle startup slows down with a very large number of
> triple collections (graphs).
> Separating this functionality in a separate service reduces TcManager
> complexity. This service should be configurable to be able to disable the
> triple collection name as a service functionality.
--
This message was sent by Atlassian JIRA
(v6.2#6252)