[GitHub] jena pull request #368: JENA-1495 Return Model from PrefixMapping methods.

2018-03-02 Thread jaco0646
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 
Date:   2018-03-03T01:06:51Z

Return Model from PrefixMapping methods.




---


[jira] [Commented] (JENA-1495) Covariant return type for Model's PrefixMapping methods.

2018-03-02 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/JENA-1495?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=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 
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 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 map );
>  # SecuredModel withDefaultMappings( PrefixMapping map );
> ...and update SecuredModelImpl accordingly.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)