You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/03/03 01:13:00 UTC
[jira] [Commented] (JENA-1495) Covariant return type for Model's
PrefixMapping methods.
[ https://issues.apache.org/jira/browse/JENA-1495?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16384396#comment-16384396 ]
ASF GitHub Bot commented on JENA-1495:
--------------------------------------
GitHub user jaco0646 opened a pull request:
https://github.com/apache/jena/pull/368
JENA-1495 Return Model from PrefixMapping methods.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jaco0646/jena Covariant-Model-Methods
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/jena/pull/368.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #368
----
commit db778544bf71099447b4126daebf5e0df79c3e3c
Author: jaco0646 <ja...@...>
Date: 2018-03-03T01:06:51Z
Return Model from PrefixMapping methods.
----
> Covariant return type for Model's PrefixMapping methods.
> --------------------------------------------------------
>
> Key: JENA-1495
> URL: https://issues.apache.org/jira/browse/JENA-1495
> Project: Apache Jena
> Issue Type: Improvement
> Components: Core
> Affects Versions: Jena 3.6.0
> Reporter: Adam Jacobs
> Priority: Trivial
> Labels: easyfix
>
> The {{Model}} interface inherits several methods from {{PrefixMapping}} which return {{this}}.
> The return type of these methods can be refined to allow call chaining with the {{Model}} object.
> There appear to be two concrete implementations of {{Model}} which override the {{PrefixMapping}} methods: {{ModelCom}} and {{SecuredModelImpl}}. Steps to add covariant return types for prefix mapping are as follows.
> Add these six methods to the Model interface.
> # Model setNsPrefix( String prefix, String uri );
> # Model removeNsPrefix( String prefix );
> # Model clearNsPrefixMap();
> # Model setNsPrefixes( PrefixMapping other );
> # Model setNsPrefixes( Map<String, String> map );
> # Model withDefaultMappings( PrefixMapping map );
> ...and update ModelCom accordingly.
> Add these six methods to the SecuredModel interface.
> # SecuredModel setNsPrefix( String prefix, String uri );
> # SecuredModel removeNsPrefix( String prefix ); // This method is already defined.
> # SecuredModel clearNsPrefixMap();
> # SecuredModel setNsPrefixes( PrefixMapping other );
> # SecuredModel setNsPrefixes( Map<String, String> map );
> # SecuredModel withDefaultMappings( PrefixMapping map );
> ...and update SecuredModelImpl accordingly.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)