CRecordRemoveAppFactory
The message
This message belongs to the application factory collector API.
The Application Collector Service is located in the plugin NY_ApplicationFactoryCollectorPlugIn.
{ "id": "1246722a-b61c-46e4-a42e-08563bb30006", "name": "REMOVE_APP_FACTORY ", "isService": "false", "namespaces": "", "description": "Remove an application factory.", "slots": [ { "key": "appId", "name": "APPLICATION_ID ", "direction": "REQUEST", "mandatory": "true", "type": "UUID", "description": "The ID of the application." }, { "key": "factoryAddress", "name": "FACTORY_ADDRESS ", "direction": "REQUEST", "mandatory": "true", "type": "TARGET_ADDRESS", "description": "The address of the application factory." } ] }
Arguments
APPLICATION_ID : The ID of the application.FACTORY_ADDRESS : The target address of the factory.
Usage
Sending the message
Example of use (after generating of the class CRecordRemoveAppFactory
):
private void removeApplicationFactory() throws CException {// The message is sent to the AppCollector microservice. final IId microserviceId = CIdFactory.fromObject("NY_ApplicationFactoryCollector"); final CEnvelope env = CEnvelope.forMicroService(microserviceId); final CRecord record = CRecordRemoveAppFactory.create(); CRecordRemoveAppFactory.setApplicationId(record,UUID.fromString("186687b0-e99b-4479-be94-d69051c9542f") ); CRecordRemoveAppFactory.setFactoryAddress(record,getAddress() ); sendRequest(env, record); }
Dealing with the response
The response can - as always - be caught in a separate message handler.
// in the constructor of your target: addMessageHandler(CRecordRemoveAppFactory.ID, this::asyncRemoveAppFactory);
// handle the answer private boolean asyncRemoveAppFactory(@NotNull final CEnvelope aEnvelope, @NotNull final CRecord aRecord) { if (aEnvelope.isAnswer()) { if (aEnvelope.getResultCode() != CResultCode.SUCCESS) {// ... } return true; } else { return false; } }