diff --git a/data-wrapper/v1/csv.ini b/data-wrapper/v1/csv.ini index 22af3c9..e9ead95 100644 --- a/data-wrapper/v1/csv.ini +++ b/data-wrapper/v1/csv.ini @@ -5,7 +5,7 @@ # OpenAPI Documentation - JSON format (dot notation) post.operationId = post-v1-csv post.description = Transformation d'un fichier CSV en fichier corpus -post.summary = Le fichier est transformé en fichier coprus exploitable par un web service asynchrone, chaque ligne est réduite à un object contenant 2 champs (id, value) +post.summary = Le fichier est transformé en fichier coprus exploitable par un web service asynchrone post.tags.0 = data-wrapper post.requestBody.content.text/csv.schema.type = string post.requestBody.content.text/csv.schema.format = binary @@ -13,18 +13,28 @@ post.responses.default.description = Fichier corpus au format tar.gz post.responses.default.content.application/x-tar.schema.type = string post.responses.default.content.application/x-tar.schema.format = binary -post.parameters.0.description = Nom du champ à exploiter comme identifiant de ligne +post.parameters.0.description = Nom du champ à exploiter comme identifiant de colonne post.parameters.0.in = query -post.parameters.0.name = value +post.parameters.0.name = id post.parameters.0.schema.type = string -post.parameters.0.schema.default = value +post.parameters.0.schema.default = id post.parameters.0.required = false -post.parameters.1.description = Nom du champ à exploiter comme identifiant de colonne +post.parameters.1.description = Nom du champ à exploiter comme identifiant de ligne post.parameters.1.in = query -post.parameters.1.name = id +post.parameters.1.name = value post.parameters.1.schema.type = string -post.parameters.1.schema.default = id +post.parameters.1.schema.default = value post.parameters.1.required = false +post.parameters.2.description = chaque ligne est réduite à un object contenant 2 champs (id, value) +post.parameters.2.in = query +post.parameters.2.name = slim +post.parameters.2.schema.type = boolean +post.parameters.2.schema.default = true +post.parameters.2.required = false + +[env] +path = slim +value = env('slim').thru(x => (x === 'false' ? false : true)) [use] plugin = basics @@ -33,12 +43,15 @@ [CSVObject] -[replace] +[assign] path = id value = get(env('id', 'id')) path = value value = get(env('value', 'value')) +[exchange] +value = self().thru(x => _.env('slim') ? _.pick(x, ['id', 'value']) : x) + [TARDump] compress = true manifest = fix({version: '1'}) diff --git a/data-wrapper/v1/istex-tar-gz.ini b/data-wrapper/v1/istex-tar-gz.ini new file mode 100644 index 0000000..95ef476 --- /dev/null +++ b/data-wrapper/v1/istex-tar-gz.ini @@ -0,0 +1,60 @@ +# Entrypoint output format +mimeType = application/x-tar +extension = tar.gz + +# OpenAPI Documentation - JSON format (dot notation) +post.operationId = post-v1-tar-gz +post.description = Transformation d'un fichier ISTEX (format tar.gz) en fichier corpus +post.summary = Le fichier est transformé en fichier coprus exploitable par un web service asynchrone +post.tags.0 = data-wrapper +post.requestBody.content.text/csv.schema.type = string +post.requestBody.content.text/csv.schema.format = binary +post.requestBody.required = true +post.responses.default.description = Fichier corpus au format tar.gz +post.responses.default.content.application/x-tar.schema.type = string +post.responses.default.content.application/x-tar.schema.format = binary +post.parameters.0.description = Nom du champ à exploiter contenant l'identifiant +post.parameters.0.in = query +post.parameters.0.name = id +post.parameters.0.schema.type = string +post.parameters.0.schema.default = ark.0 +post.parameters.0.required = false +post.parameters.1.description = Nom du champ à exploiter contenant la valeur +post.parameters.1.in = query +post.parameters.1.name = value +post.parameters.1.schema.type = string +post.parameters.1.schema.default = abstract +post.parameters.1.required = false +post.parameters.2.description = chaque objet est réduit à un object contenant 2 champs (id, value) +post.parameters.2.in = query +post.parameters.2.name = slim +post.parameters.2.schema.type = boolean +post.parameters.2.schema.default = true +post.parameters.2.required = false + + +[env] +path = slim +value = env('slim').thru(x => (x === 'false' ? false : true)) + +[use] +plugin = basics + +[TARExtract] +compress = true +path = */*.json + +[assign] +path = id +value = get(env('id', 'ark.0')) + +path = value +value = get(env('value', 'abstract')) + +[exchange] +value = self().thru(x => _.env('slim') ? _.pick(x, ['id', 'value']) : x) + +[TARDump] +compress = true +manifest = fix({version: '1'}) +manifest = fix({generator: 'v1/istex-tar-gz'})