Ticket #895 (closed Task: fixed)

Opened 9 years ago

Last modified 8 years ago

Core API: remove "maxResultSize" parameter

Reported by: jri Owned by: jri
Priority: Major Milestone: Release 4.8
Component: DeepaMehta Standard Distribution Version: 4.7
Keywords: Cc: dgf, Malte, JuergeN
Complexity: 3 Area: Application Framework / API
Module: deepamehta-core


The maxResultSize parameter was introduced in DM 4.0.4 in conjunction with the "Result Limit" feature (see #98). However the Result Limit feature is not supported since DM 4.0.14 anymore. It was dropped in the course of the storage layer reimplementation.

To not confuse developers the remainders of the Result Limit feature should be dropped completely, in particular:

  • Remove the maxResultSize parameter from all Core API methods.
  • Remove the max_result_size parameter from all RESTClient methods.
  • Remove the totalCount field from ResultSet.
  • Remove the total_count JSON property from result set serialization.

Change History

comment:1 Changed 9 years ago by jri

  • Status changed from new to accepted

comment:2 Changed 9 years ago by Jörg Richter <jri@…>

In baf7190d16b5f80e2cd72cca177f9bdcf8f68a56/deepamehta:

Core: remove result limit remainders (#895).


Core API:

  • Remove maxResultSize parameter from all methods
  • Class ResultList:
    • Remove totalCount parameter from constructor
    • Remove getTotalCount() method


  • Remove total_count JSON property from result lists


  • Remove max_result_size parameter from all methods

See #895.

comment:3 Changed 8 years ago by jri

  • Status changed from accepted to closed
  • Resolution set to fixed

comment:4 Changed 8 years ago by Jörg Richter <jri@…>

In f7efd80ed860c706a79c9432748d6f246a53ecbb/deepamehta:

Core API: drop class ResultList (#941).


Core API

1 class dropped:


Since DM 4.8 all methods which returned a ResultList now return a plain java.util.List.

Background: ResultList once was instroduced in conjunction with the "Result Limit" feature but that feature is abandoned for quite a while (see #895). This makes the API uniform as the develper must no longer treat ResultList and List results differently.

1 new method in DeepaMehtaUtils:

public static <T extends DeepaMehtaObject> List<T> loadChildTopics(List<T> objects)

Before 4.8 this method was located in ResultList? and is now a static utility.


As a consequence all responses which returned a "ResultList?" now return the plain result array.

Pre-4.8 response:

    items: [...]

Since 4.8:


3rd-party clients (which do not rely on the Webclient's rest_client.js) must be adapted.

These REST API calls are affected:


GET /core/topic/{id}/related_topics
GET /core/topic/{id}/related_assocs
GET /core/association/{id}/related_topics
GET /core/association/{id}/related_assocs


GET /webclient/topic/{id}/related_topics


GET /contact/{id}/institutions
GET /contact/{id}/persons


GET /event/participant/{id}
GET /event/{id}/participants


GET /facet/multi/{facet_type_uri}/topic/{id}

See #941.

Note: See TracTickets for help on using tickets.