You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Julian Reschke (JIRA)" <ji...@apache.org> on 2013/11/28 14:59:35 UTC

[jira] [Updated] (OAK-193) TODO class for partially implemented features

     [ https://issues.apache.org/jira/browse/OAK-193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated OAK-193:
-------------------------------

    Description: 
As discussed in OAK-64, we have many cases where we need to use dummy implementations of some features to allow higher level applications or integration tests to work without changes. To better keep track of such cases and to be able to control the behavior of dummy implementations at runtime, I'd like to add an explicit {{TODO}} class for this.

The behavior of the {{TODO}} class would be controlled by a {{todo}} system property (default setting {{strict}}) and would allow us to replace something like this:

{code}
public void doSomething() throws RepositoryException {
    throw new UnsupportedRepositoryOperationException();
}
{code}

with code like this:

{code}
public void doSomething() throws RepositoryException {
    TODO.unimplemented().doNothing();
}
{code}

By default ({{-Dtodo=strict}}) the {{doNothing()}} call would throw an {{UnsupportedRepositoryOperationException}}, but with a different setting it could instead log a warning ({{-Dtodo=log}}) or simply do nothing ({{-Dtodo=none}}).

  was:
As discussed in OAK-64, we have many cases where we need to use dummy implementations of some features to allow higher level applications or integration tests to work without changes. To better keep track of such cases and to be able to control the behavior of dummy implementations at runtime, I'd like to add an explicit {{TODO}} class for this.

The behavior of the {{TODO}} class would be controlled by a {{todo}} systen poperty (default setting {{strict}}) and would allow us to replace something like this:

{code}
public void doSomething() throws RepositoryException {
    throw new UnsupportedRepositoryOperationException();
}
{code}

with code like this:

{code}
public void doSomething() throws RepositoryException {
    TODO.unimplemented().doNothing();
}
{code}

By default ({{-Dtodo=strict}}) the {{doNothing()}} call would throw an {{UnsupportedRepositoryOperationException}}, but with a different setting it could instead log a warning ({{-Dtodo=log}}) or simply do nothing ({{-Dtodo=none}}).


> TODO class for partially implemented features
> ---------------------------------------------
>
>                 Key: OAK-193
>                 URL: https://issues.apache.org/jira/browse/OAK-193
>             Project: Jackrabbit Oak
>          Issue Type: New Feature
>          Components: core, jcr
>            Reporter: Jukka Zitting
>            Assignee: Jukka Zitting
>            Priority: Minor
>             Fix For: 0.4
>
>
> As discussed in OAK-64, we have many cases where we need to use dummy implementations of some features to allow higher level applications or integration tests to work without changes. To better keep track of such cases and to be able to control the behavior of dummy implementations at runtime, I'd like to add an explicit {{TODO}} class for this.
> The behavior of the {{TODO}} class would be controlled by a {{todo}} system property (default setting {{strict}}) and would allow us to replace something like this:
> {code}
> public void doSomething() throws RepositoryException {
>     throw new UnsupportedRepositoryOperationException();
> }
> {code}
> with code like this:
> {code}
> public void doSomething() throws RepositoryException {
>     TODO.unimplemented().doNothing();
> }
> {code}
> By default ({{-Dtodo=strict}}) the {{doNothing()}} call would throw an {{UnsupportedRepositoryOperationException}}, but with a different setting it could instead log a warning ({{-Dtodo=log}}) or simply do nothing ({{-Dtodo=none}}).



--
This message was sent by Atlassian JIRA
(v6.1#6144)