[ 
https://issues.apache.org/jira/browse/SOLR-994?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12668350#action_12668350
 ] 

Jared Flatow commented on SOLR-994:
-----------------------------------

The transformer must know somehow when $hasMore should be true. If the 
transformer always give $hasMore a value "true", will there be infinite 
requests made or will it stop on the first empty request? Using the 
EnumeratedEntityTransformer, a user can specify from the config xml when 
$hasMore should be true using the chunkSize attribute. This solves a general 
case of "request N rows at a time until no more are available". I agree, a 
combination of 'rowsFetchedCount' and a HasMoreUntilEmptyTransformer would also 
make this doable from the configuration.

> EnumeratedEntityTransformer
> ---------------------------
>
>                 Key: SOLR-994
>                 URL: https://issues.apache.org/jira/browse/SOLR-994
>             Project: Solr
>          Issue Type: New Feature
>          Components: contrib - DataImportHandler
>    Affects Versions: 1.4
>            Reporter: Jared Flatow
>            Priority: Minor
>             Fix For: 1.4
>
>         Attachments: SOLR-994.patch
>
>
> An EnumeratedEntityTransformer gives the Nth entity an accessible 
> ${<entity>.n} == N. In addition, the entity may specify a chunkSize 
> attribute, which will cause the chunkSize'th entity to gain the attribute 
> $hasMore=true. A template for a nextUrl may also be specified on the entity, 
> that is different from the url template.
> Consider an API:
> http://host:port/path/to/resource?maximum_number_returned=50&return_start_index=0
> an entity could specify:
> <entity name="myEntity" processor="XPathEntityProcessor" 
> transformer="EnumeratedEntityTransformer" 
> url="http://host:port/path/to/resource?maximum_number_returned=50&return_start_index=${myEntity.n}";
>  chunkSize=50>...</entity>
> This allows for fetching entities in chunks until there are < chunkSize 
> returned.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to