[
https://issues.apache.org/jira/browse/TINKERPOP3-566?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Marko A. Rodriguez closed TINKERPOP3-566.
-----------------------------------------
Resolution: Won't Fix
Given the way TP3 has gone with {{TraversalStrategies}} I don't think we will
support nor promote users extending the core {{structure/}} interfaces.
> Ability to extend base concepts
> -------------------------------
>
> Key: TINKERPOP3-566
> URL: https://issues.apache.org/jira/browse/TINKERPOP3-566
> Project: TinkerPop 3
> Issue Type: Improvement
> Components: structure
> Reporter: davidcrouch
>
> The base interfaces (Edge, Vertex etc.) do not sufficiently support a user's
> extensions to the base concepts. For example, assume a user's property
> extension is:-
> interface MyProperty<V> extends Property<V> // essentially the
> same as VertexProperty<V> definition
> and their extended Edge implementation would look something like:-
> public <V> Iterator<MyProperty<V>> propertyIterator(String...
> propertyKeys)
> The Edge property iterator method below causes a compilation error:-
> public <V> Iterator<Property<V>> propertyIterator(final String...
> propertyKeys);
> To support the code above the Edge property iterator signature needs to be
> this:-
> public <V> Iterator<? extends Property<V>> propertyIterator(final
> String... propertyKeys);
> The use case for this is a vendor's Edge providing a super-set of
> functionality for an edge Property. I would assume this would apply for other
> concepts as well.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)