Skip to content
This repository has been archived by the owner on Dec 22, 2022. It is now read-only.

serializer framework to keep #84

Closed
wants to merge 12 commits into from
Closed

Conversation

al-niessner
Copy link
Contributor

@al-niessner al-niessner commented Nov 15, 2021

🗒️ Summary

Fixes these issues:

#88
https://github.com/NASA-PDS/pds-api/issues/65
https://github.com/NASA-PDS/pds-api/issues/120
https://github.com/NASA-PDS/pds-api/issues/125

and requires this work:

#80

⚙️ Test Data and/or Report

One of the following should be included here:

  • Reference to regression test included in code (preferred wherever reasonable)
  • Attach test data here + outputs of tests

♻️ Related Issues

NASA-PDS/pds-api#110

jimmie and others added 3 commits October 14, 2021 16:59
* Rework how secrets are obtained by the service to environment variables set via secrets manager instead. This better abstracts the secrets in the service code.

* Revise how ES login is passed to container in AWS context. Also applied to ES host and node name.

* clear out for default in aws app properties.

* Slight clarification in comment.

* Changes in response to Sean's code review.

* Added IllegalStateException throw in constructor.

* Rework how secrets are obtained by the service to environment variables set via secrets manager instead. This better abstracts the secrets in the service code.

* Revise how ES login is passed to container in AWS context. Also applied to ES host and node name.

* clear out for default in aws app properties.

* Remove accidental duplication of ssl section, set elasticsearch ssl to false.

* Remove another redundant section

Co-authored-by: Jimmie Young <jdyoung@jpl.nasa.gov>
Co-authored-by: Eugene <test@test.com>
* Employ Foxtrot and Charlie cost monitoring tags

* Add s3 backend setup for terraform

* Incorporate cost-related resource tagging. Add target group creation

* Add creation of secrets and parameters.

Co-authored-by: Jimmie Young <jdyoung@jpl.nasa.gov>
@al-niessner al-niessner self-assigned this Nov 15, 2021
@al-niessner al-niessner requested a review from a team as a code owner November 15, 2021 18:34
… service definition so that the target group assication is made w/ the service. (#86)

Co-authored-by: Jimmie Young <jdyoung@jpl.nasa.gov>
@al-niessner
Copy link
Contributor Author

@tloubrieu-jpl @jordanpadams

This fixes pds-api-65, pds-api-120, and (pds-api-125. Sorry it did not make the sprint but it is ready for review and to be merged into pds-api-110 before it is merged with main.

al-niessner and others added 7 commits November 18, 2021 17:12
* fix all the shortcuts to accept application/pds4+json

* changes to support swagger.yaml changes

* middle of refactor

* back to ResponseEntity<Object>

* rework how responses are built

Basically scrapped what was there and reqbuilt it all using a visitor pattern that will hopefully consolidate changes that fix all endpoints instead of so much cut-n-past. There is still a lot of boilerplate thata may be able to be worked out with more effort.

* most errors are cleaned up

Had to add "accept: application/json to the verify scripts. This moved them formward but have some odd results like the query language changed without updating the test. Other items are still failing and will need to track them down one by one but the problems are no longer in the verify scripts.

Added some missed functinality in the product handler.

Cleaned up some logic in the RequestAndResponseContext that does the bulk of the work for mixing and matching the various application type requests. Added a new error to account for when valid information was given (lidvid) but nothing was found despite that.

* last adjustments

The looking up a lidvid from lid required a touch more fine tuning to verify that it found the whole lidvid matches the given to accound for partial lidvids that are more than a lid but less than a full lidvid.

Had to also clean up a List<String>.toArray() that was causing a segfault. Turning a list to [] syntax is not so easy to understand.

* set these to something workable to everyone but me

* add cvs, cvs+text,kvp+json

The work of making the product and adding them all to the endpoints. THe work of adding a serializer is a touch more complicated.

* fixed up the query

The blank query had to use the preset which got lost. Also put the conversion of the names back in place.

* fix what is returned when fields is blanks

Accidentally made it so only the minimal set was returned if fields are left blank. Added a min/max list of fields where min must be a subset of max and empty is a full set without having to define all that may be in elastic search. This min/max approach fixes the blank fields and adds constraints so that pds+ formats will only  every reeturn the allowable keys and nothing else. These are simple to change in the future as well by modifying just the min/max arrays.

Co-authored-by: Al Niessner <Al.Niessner@xxx.xxx>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants