diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2018-11-14 19:57:50 -0800 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2018-11-14 19:57:50 -0800 |
commit | e095a6587c1915941d4ee4d4742418b31103ae46 (patch) | |
tree | e79d62c24b8d4666076e6aebaf3b14f3dec11860 /rust/src/api_entity_crud.rs | |
parent | 546b5afcf91992d26437b47107eb9433cb1656bb (diff) | |
download | fatcat-e095a6587c1915941d4ee4d4742418b31103ae46.tar.gz fatcat-e095a6587c1915941d4ee4d4742418b31103ae46.zip |
enforce some controlled vocabularies in API
Diffstat (limited to 'rust/src/api_entity_crud.rs')
-rw-r--r-- | rust/src/api_entity_crud.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/rust/src/api_entity_crud.rs b/rust/src/api_entity_crud.rs index f8e3a0ed..80cae471 100644 --- a/rust/src/api_entity_crud.rs +++ b/rust/src/api_entity_crud.rs @@ -877,6 +877,16 @@ impl EntityCrud for ReleaseEntity { if let Some(ref extid) = entity.wikidata_qid { check_wikidata_qid(extid)?; } + if let Some(ref release_type) = entity.release_type { + check_release_type(release_type)?; + } + if let Some(ref contribs) = entity.contribs { + for contrib in contribs { + if let Some(ref role) = contrib.role { + check_contrib_role(role)?; + } + } + } } let rev_ids: Vec<Uuid> = insert_into(release_rev::table) |