Exemples¶
Recherche d’unités archivistiques par ArchivalAgencyArchiveUnitIdentifier¶
EndPoint: /access-external/v1/units
Client Java
try (AccessExternalClient client = AccessExternalClientFactory.getInstance().getClient()) {
Integer tenantId = 0; // à titre d'exemple
String contract = "myContract"; // à titre d'exemple
final String selectQuery = "{\"$query\": [{\"$eq\": {\"ArchivalAgencyArchiveUnitIdentifier\" : \"20130456/3\"}}]}";
final JsonNode queryJson = JsonHandler.getFromString(selectQuery);
client.selectUnits(new VitamContext(tenantId).setAccessContract(contract), queryJson);
} catch (InvalidParseOperationException | VitamClientException e) {
///Log ...
}
Client Java avec construction DSL
EndPoint: access-external/v1/units
JsonNode queryDsql = null;
Integer tenantId = 0; // à titre d'exemple
String contract = "myContract"; // à titre d'exemple
try (AccessExternalClient client = AccessExternalClientFactory.getInstance().getClient()) {
Query query = QueryHelper.eq("ArchivalAgencyArchiveUnitIdentifier", "20130456/3");
SelectMultiQuery select = new SelectMultiQuery()
.addQueries(query)
.setLimitFilter(0, 100);
client.selectUnits(new VitamContext(tenantId).setAccessContract(contract), select.getFinalSelect());
} catch (InvalidCreateOperationException | InvalidParseOperationException | VitamClientException e) {
///Log ...
}
Postman
POST /access-external/v1/units
Indiquer pour la requête POST :
- Header :
- X-Http-Method-Override : GET
- X-Tenant-Id : 0
- X-Access-Contract-Id : myContract
- Accept: application/json
- Content-Type: application/json
- Body :
{
"$roots": [],
"$query": [
{
"$eq": {
"ArchivalAgencyArchiveUnitIdentifier": "20130456/3"
}
}
],
"$filter": {},
"$projection": {}
}
Recherche de registre de fonds par producteur (FRAN_NP_005568)¶
Client Java
Endpoint : /admin-external/v1/accessionregisters
Integer tenantId = 0; // à titre d'exemple
String contract = "myContract"; // à titre d'exemple
final String queryDsl = "{\"$query\": [{\"$eq\": {\"OriginatingAgency\" : \"FRAN_NP_005568\"}}]}";
try (AdminExternalClient client = AdminExternalClientFactory.getInstance().getClient()) {
final JsonNode queryJson = JsonHandler.getFromString(queryDsl);
client.findAccessionRegister(new VitamContext(tenantId).setAccessContract(contract), queryJson);
} catch (InvalidParseOperationException | VitamClientException e) {
// LOG
}
Client Java avec construction DSL
Endpoint : /admin-external/v1/accessionregisters
Integer tenantId = 0; // à titre d'exemple
String contract = "myContract"; // à titre d'exemple=
Select select = new Select();
try (AdminExternalClient client = AdminExternalClientFactory.getInstance().getClient()) {
select.setQuery(QueryHelper.eq("OriginatingAgency", "FRAN_NP_005568"));
client.findAccessionRegister(new VitamContext(tenantId).setAccessContract(contract),
select.getFinalSelect());
} catch (VitamClientException | InvalidCreateOperationException e) {
// LOG
}
Postman
POST /admin-external/v1/accessionregisters
Indiquer pour la requête POST :
- Header :
- X-Http-Method-Override : GET
- X-Tenant-Id : 0
- X-Access-Contract-Id : myContract
- Accept: application/json
- Content-Type: application/json
- Body
{
"$query" : {
"$eq" : { "OriginatingAgency" : "FRAN_NP_005568" }
},
"$filter":{},
"$projection":{}
}
Recherche d’unités archivistiques par titre AND description AND dates¶
Client Java
Endpoint : /access-external/v1/units
Integer tenantId = 0; // à titre d'exemple
String contract = "myContract"; // à titre d'exemple
Select select = new Select();
try (AccessExternalClient client = AccessExternalClientFactory.getInstance().getClient()) {
MatchQuery titleQ = QueryHelper.match("Title", "myTitle");
CompareQuery dateQ = QueryHelper.eq("StartDate", "2015-07-24T02:15:28.28Z");
MatchQuery descQ = QueryHelper.match("Description", "myDescription");
select.setQuery(QueryHelper.and().add(titleQ, dateQ, descQ));
client.selectUnits(new VitamContext(tenantId).setAccessContract(contract), select.getFinalSelect());
} catch (InvalidCreateOperationException | VitamClientException e) {
///Log ...
}
Postman
GET /access-external/v1/units Indiquer pour la requête POST :
- Header :
- X-Http-Method-Override : GET
- X-Tenant-Id : 0
- X-Access-Contract-Id : myContract
- Accept: application/json
- Content-Type: application/json
- Body :
{
"$roots": [],
"$query": [
{
"$and": [
{
"$match": {
"Title" : "myTitle"
}
},
{
"$match": {
"Description" : "myDescription"
}
},
{
"$eq" : {
"StartDate" : "2015-07-24T02:15:28.28Z"
}
}
]
}
],
"$filter": {},
"$projection": {}
}
Recherche d’unités archivistiques par libre titre OR description¶
Client Java
Endpoint : /access-external/v1/units
Integer tenantId = 0; // à titre d'exemple
String contract = "myContract"; // à titre d'exemple
Select select = new Select();
try (AccessExternalClient client = AccessExternalClientFactory.getInstance().getClient()) {
MatchQuery titleQ = QueryHelper.match("Title", "myTitle");
MatchQuery descQ = QueryHelper.match("Description", "myDescription");
select.setQuery(QueryHelper.or().add(titleQ, descQ));
client.selectUnits(new VitamContext(tenantId).setAccessContract(contract), select.getFinalSelect());
} catch (InvalidCreateOperationException | VitamClientException e) {
///Log ...
}
Postman
GET /access-external/v1/units
Indiquer pour la requête POST :
- Header :
- X-Http-Method-Override : GET
- X-Tenant-Id : 0
- X-Access-Contract-Id : myContract
- Accept: application/json
- Content-Type: application/json
- Body :
{
"$roots": [],
"$query": [
{
"$or": [
{
"$match": {
"Title" : "myTitle"
}
},
{
"$match": {
"Description" : "myDescription"
}
}
]
}
],
"$filter": {},
"$projection": {}
}