diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2021-10-12 17:25:27 -0700 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2021-10-13 16:21:30 -0700 |
commit | 81e3fc2f60f80040d4d7b5f99191aa706f41c3c7 (patch) | |
tree | 7efeee93faaa1be6cf09d1944d87bd49d24bfe0a | |
parent | 31c96eb15af54c90e4d048dfe82cc580a0679a13 (diff) | |
download | fatcat-81e3fc2f60f80040d4d7b5f99191aa706f41c3c7.tar.gz fatcat-81e3fc2f60f80040d4d7b5f99191aa706f41c3c7.zip |
fatcat-api: enforce more release ext_id checks at create/update
Not enforcing these was a serious bug!
-rw-r--r-- | rust/src/entity_crud.rs | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/rust/src/entity_crud.rs b/rust/src/entity_crud.rs index 0d72788d..b3b97c73 100644 --- a/rust/src/entity_crud.rs +++ b/rust/src/entity_crud.rs @@ -2107,15 +2107,28 @@ impl EntityCrud for ReleaseEntity { if let Some(ref extid) = entity.ext_ids.core { check_core_id(extid)?; } + if let Some(ref extid) = entity.ext_ids.arxiv { + check_arxiv_id(extid)?; + } if let Some(ref extid) = entity.ext_ids.jstor { check_jstor_id(extid)?; } + if let Some(ref extid) = entity.ext_ids.ark { + check_ark_id(extid)?; + } if let Some(ref extid) = entity.ext_ids.mag { check_mag_id(extid)?; } - if let Some(ref extid) = entity.ext_ids.ark { - check_ark_id(extid)?; + if let Some(ref extid) = entity.ext_ids.doaj { + check_doaj_id(extid)?; + } + if let Some(ref extid) = entity.ext_ids.dblp { + check_dblp_key(extid)?; } + if let Some(ref extid) = entity.ext_ids.oai { + check_oai_id(extid)?; + } + if let Some(ref release_type) = entity.release_type { check_release_type(release_type)?; } |