[dna-issues] [JBoss JIRA] Resolved: (DNA-265) Improve the Graph API's methods for returning blocks of children

Randall Hauch (JIRA) jira-events at lists.jboss.org
Fri Dec 12 18:00:36 EST 2008


     [ https://jira.jboss.org/jira/browse/DNA-265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Randall Hauch resolved DNA-265.
-------------------------------

    Resolution: Done


Changed the Graph API to improve the methods of getting blocks of children, including adding a new technique for getting the 'n' children that follow a previously-returned sibling.  This did change the API, but these were methods that were not used except in test cases.

> Improve the Graph API's methods for returning blocks of children
> ----------------------------------------------------------------
>
>                 Key: DNA-265
>                 URL: https://jira.jboss.org/jira/browse/DNA-265
>             Project: DNA
>          Issue Type: Feature Request
>          Components: API, Graph
>    Affects Versions: 0.3
>            Reporter: Randall Hauch
>            Assignee: Randall Hauch
>            Priority: Minor
>             Fix For: 0.4
>
>
> The Graph API has several methods for getting a subset (or "block") of children by specifying the parent, starting index, and child.  This is useful when a graph client is paging through the children.  However, the Graph API methods to do this are less than ideal and don't make for readable code.  Plus, there is a use case when the client doesn't want to specify the index, but rather they want to specify the last child that they read.  This may be more appealing to some clients for cases when the children are being modified, and the indexes change in between calls to read blocks.
> The Graph API should be changed to make getting children more closely aligned with the method to get all children, so that developers can decide after they add the "getChildren()." call, letting the IDE show the different options.  Also, the API should supporting getting n children after a previously-retrieved sibling.
> Here are some examples of what the new API should look like.  This line:
>     graph.getChildren().of(parent);
> gets all children of the 'parent' node (where 'parent' can be a string path, Path, Location, UUID, or identification Property objects).  This line:
>     graph.getChildren().inBlockOf(10).startingAt(50).under(parent);
> gets up to 10 children under a parent node, starting at the 51st child (remember, indexes are 0-based).  And this line:
>     graph.getChildren().inBlockOf(10).startingAfter(sibling);
> gets up to 10 children that immediately follow the 'sibling' node.  Here, 'sibling' can be a string path, Path,  Location, UUID, or identification Property objects, but will often be the actual Location returned from a previous call.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the dna-issues mailing list