You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Carsten Ziegeler (JIRA)" <ji...@apache.org> on 2015/06/13 17:32:03 UTC
[jira] [Resolved] (SLING-4805) ResourceResolver should extend
Closable interface.
[ https://issues.apache.org/jira/browse/SLING-4805?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Carsten Ziegeler resolved SLING-4805.
-------------------------------------
Resolution: Fixed
The resource resolver interface now extends Closeable
> ResourceResolver should extend Closable interface.
> --------------------------------------------------
>
> Key: SLING-4805
> URL: https://issues.apache.org/jira/browse/SLING-4805
> Project: Sling
> Issue Type: Improvement
> Components: API
> Affects Versions: API 2.9.0
> Reporter: MichaĆ Chudy
> Assignee: Carsten Ziegeler
> Fix For: API 2.10.0
>
>
> While creating {{ResourceResolver}}, we have to remember to close it and code looks like that:
> {code}
> ResourceResolver resourceResolver = null;
> try {
> resourceResolver = resourceResolverFactory.getServiceResourceResolver(null);
> } catch (LoginException e) {
> LOGGER.error("Error during getting instance of ResourceResolver class", e);
> } finally {
> if (resourceResolver != null) {
> resourceResolver.close();
> }
> }
> {code}
> While making {{ResourceResolver}} additionally extend {{Closable}} (or {{AutoClosable}}) interface, we could use try-with-resources Java 7 feature and our code would be more concise, elegant, readable.
> {code}
> try (ResourceResolver resolver = factory.getServiceResourceResolver(null)) {
> //do sth
> }
> {code}
> (Please notice that {{Closable}} is still part of Java 6 API)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)