2021.10 release adds integration with Genesys to retrieve requests for material. GG-CE is aligned with the .Net GRIN-Global implementation to handle concurrent updates to records by testing the modified_date. This prevents making changes to the database if a record had already been modified by another user.

New features and API updates:

  • The preferred name is provided with Accession and Inventory records.
  • The number of items in OrderRequests is automatically calculated.
  • Integration with Genesys for retrieving order requests is added.
  • API endpoints for viability environments are available.

Improvements and bug fixes:

  • Error handling of the SOAP API (used by the Curator Tool) is improved and aligned with the .Net GG implementation.
  • Concurrent changes to the data are prevented by testing against modified_date as in the .Net implementation.
  • Software dependencies are updated to their latest releases.

Database changes:

  • Column mls_status added to table accession.
  • The GG-CE specific site_locations table is removed.
  • There are no other changes to the database model between v2021.9 and v2021.10 release

2021.10

  • 38db87d6 OrderRequestItem: initialization of extra fields with lazy loading
  • 76ba432f Concurrency: A few updates
  • 2226a6a2 Concurrency: CRUDServiceImpl#update(updated) checks for modifiedDate of AuditedModel before calling update(updated, target)
  • 34232902 Concurrency: @Version on modifiedDate field
  • c86ad00d Print warning message in ElasticJPAListener#maybeReindex
  • f8b07ff8 ES: Skip exists term query for Nested objects
  • 8bf72d16 Filtering: Demo of how to filter by collection member properties
  • cf82acfa Filtering collections: Test filtering by collection elements
  • 8d51d7d6 Genesys requests: Registered community CodeValues for purpose and status
  • 57c2c5a4 Genesys: Fixed exceptions and saving of client config
  • 36ae03b4 GenesysController: listAccessions() accepts accession filter
  • 67f751d3 Genesys: Integration of GG-CE with Genesys
  • 5c74b2a7 OAuth tokens: Auto-select "allow" option in confirm.jsp
  • 5096ea22 Drop SiteLocation
  • 90b5af95 OAauthManagement: setSecret() endpoint
  • 852ef0dc QueryDSL 5.0 and others minor version updates
  • c823b740 Fixed NPE in ThreadInfoController
  • 5dc7b4dd Dependency cleanup
  • 51cad3c0 Return removed order request items
  • a97a54c9 Added @CodeValueField to InventoryViabilityEnvironment
  • 60c5b1b5 Listing viability environments
  • b14c2796 SOAP: Handle exceptions in GetData/SaveData the GG way
  • d569cff7 Dataviews: Updated get_site dataview for GG-CE
  • 4512ed9d CORS: Use allowedOriginPattern instead of allowedOrigin
  • d6964331 Use @CodeValueField on georeferenceDatum field
  • 1f3e2a66 Upgrade app-blocks and file-repository to 3.2-SNAPSHOT
  • da23f3c5 Minor refreshing of dependency versions
  • 98073bad Upgraded liquibase-hibernate5 and liquibase-core to 4.3.5
  • fdc6089e Minor version updates
  • c91825f7 Upgrade file-repository and application-blocks to 3.1-SNAPSHOT
  • 12216de9 Upgrade plugins
  • 5aa224a9 Spring Session with Hazelcast
  • 812bfe3e Upgrade to Hazelcast 4.2
  • 3c9f97e3 Upgrade dependencies
  • f03a81f7 ES: accession.preferredName is indexed with inventories
  • 19b0d932 Calculate preferred names for Accessions and Inventories
  • ba58ee5a Actions: count actions by filter
  • 694cdb39 Added some logic before removing orders
  • 0d2cdfd9 BUG: unable to remove OrderRequest with items
  • b94011db OrderRequest: Use @Formula to calculate number of items of an order request
  • 6f6e7949 Duplicates: Find similar Cooperators
  • 93bbba1a KPI: Scheduled runs and cleanup
  • 5a3a1df0 Add mls_status to Accession
  • e4b0fdde DB: Do not monitor or drop abandoned connections (affects long-running operations)
  • 8c8526ca Maven: Updated url to Sonatype snapshots repository