# 4.4. Administration-Management-client

# 4.5. Utilisation

## 4.5.1. Paramètres

Administration-Management-client-format Les paramètres sont les InputStreams du fichier Pronom pour l’import ou la validation. Pour la recherche des formats, les paramètres sont les requête DSL construites par les builders de common-database

Administration-Management-client-rules Les paramètres sont les InputStreams du fichier CSV pour l’import ou la validation. Pour la recherche des règles, les paramètres sont les requête DSL construites par les builders de common-database

Administration-Management-client-accession-register Les paramètres sont les InputStreams du fichier pour l’import ou la validation. Pour la recherche des registres, les paramètres sont les requête DSL construites par les builders de common-database

## 4.5.2. La factory

Afin de récupérer le client, une factory a été mise en place.

    // Récupération du client
    AdminManagementClient client = AdminManagementClientFactory.getInstance().getAdminManagementClient();

### 4.5.2.1. Le Mock

Par défaut, le client est en mode Mock. Il est possible de récupérer directement le mock :

    // Changer la configuration du Factory
    AdminManagementClientFactory.setConfiguration(AdminManagementClientFactory.AdminManagementClientType.MOCK_CLIENT, null);
    // Récupération explicite du client mock
    AdminManagementClient client = AdminManagementClientFactory.getInstance().getLogbookClient();

## 4.5.3. Le client

Pour instancier son client en mode Production :

    // Ajouter un fichier functional-administration-client.conf dans /vitam/conf
    // Récupération explicite du client
    AdminManagementClient client = AdminManagementClientFactory.getInstance().getAdminManagementClient();

Le client propose actuellement les méthodes :

    Status status();
    void checkFormat(InputStream stream);
    void importFormat(InputStream stream);
    void deleteFormat();
    JsonNode getFormatByID(String id);
    JsonNode getFormats(JsonNode query);
    checkRulesFile(InputStream stream);
    importRulesFile(InputStream stream);
    deleteRulesFile();
    JsonNode getRuleByID(String id);
    JsonNode getRule(JsonNode query);
    createorUpdateAccessionRegister(AccessionRegisterDetail register);
    JsonNode getAccessionRegister(JsonNode query);
    JsonNode getAccessionRegisterDetail(JsonNode query);

    Status importContexts(List<ContextModel> ContextModelList)
    RequestResponse<ContextModel> updateContext(String id, JsonNode queryDsl)
    RequestResponse<ContextModel> findContexts(JsonNode queryDsl)
    RequestResponse<ContextModel> findContextById(String id)