use of un.unece.uncefact.data.standard.fluxfareportmessage._3.FLUXFAReportMessage in project UVMS-Docker by UnionVMS.
the class RulesRestIT method evaluateFLUXFAReportMessageTest.
/**
* Evaluate FLUXFA report message test.
*
* @throws Exception the exception
*/
@Test
@Ignore
public void evaluateFLUXFAReportMessageTest() throws Exception {
FLUXFAReportMessage fluxfaReportMessage = new FLUXFAReportMessage();
final HttpResponse response = Request.Post(getBaseUrl() + "rules/rest/rules/evaluate/fluxfareportmessage").setHeader("Content-Type", "application/json").setHeader("Authorization", getValidJwtToken()).bodyByteArray(writeValueAsString(fluxfaReportMessage).getBytes()).execute().returnResponse();
Map<String, Object> dataMap = checkSuccessResponseReturnMap(response);
}
use of un.unece.uncefact.data.standard.fluxfareportmessage._3.FLUXFAReportMessage in project UVMS-ActivityModule-APP by UnionVMS.
the class ActivityEntityToModelMapper method mapToFLUXFAReportMessage.
@SneakyThrows
public FLUXFAReportMessage mapToFLUXFAReportMessage(List<FaReportDocumentEntity> faReportMessageEntity) {
FLUXFAReportMessage target = new FLUXFAReportMessage();
FLUXReportDocument fluxReportDocument = new FLUXReportDocument();
CodeType codeType = new CodeType();
codeType.setValue("9");
codeType.setListID("FLUX_GP_PURPOSE");
fluxReportDocument.setPurposeCode(codeType);
IDType idType = new IDType();
idType.setSchemeID("UUID");
idType.setValue(UUID.randomUUID().toString());
fluxReportDocument.setIDS(Collections.singletonList(idType));
DateTimeType dateTimeType = new DateTimeType();
dateTimeType.setDateTime(DateUtils.getCurrentDate());
fluxReportDocument.setCreationDateTime(dateTimeType);
TextType textType = new TextType();
textType.setValue("LOAD_REPORTS");
fluxReportDocument.setPurpose(textType);
FLUXParty party = new FLUXParty();
IDType idType1 = new IDType();
idType1.setSchemeID("FLUX_GP_PARTY");
idType1.setValue("TODO_SET_NODE_ALIAS");
party.setIDS(Collections.singletonList(idType1));
fluxReportDocument.setOwnerFLUXParty(party);
target.setFLUXReportDocument(fluxReportDocument);
if (CollectionUtils.isNotEmpty(faReportMessageEntity)) {
mapFAReportDocuments(target, faReportMessageEntity);
}
return target;
}
use of un.unece.uncefact.data.standard.fluxfareportmessage._3.FLUXFAReportMessage in project UVMS-ActivityModule-APP by UnionVMS.
the class ActivityEventServiceBean method getFishingActivityMessage.
@Override
public void getFishingActivityMessage(@Observes @ReceiveFishingActivityRequestEvent EventMessage eventMessage) {
log.info(GOT_JMS_INSIDE_ACTIVITY_TO_GET + "SetFLUXFAReportOrQueryMessageRequest");
try {
TextMessage jmsMessage = eventMessage.getJmsMessage();
SetFLUXFAReportOrQueryMessageRequest request = JAXBMarshaller.unmarshallTextMessage(jmsMessage, SetFLUXFAReportOrQueryMessageRequest.class);
log.info("SetFLUXFAReportOrQueryMessageRequest unmarshalled");
if (request == null) {
log.error("Unmarshalled SetFLUXFAReportOrQueryMessageRequest is null. Something went wrong during jms comm?!");
return;
}
switch(eventMessage.getMethod()) {
case GET_FLUX_FA_REPORT:
FLUXFAReportMessage fluxFAReportMessage = JAXBMarshaller.unmarshallTextMessage(request.getRequest(), FLUXFAReportMessage.class);
deleteDuplicatedReportsFromXMLDocument(fluxFAReportMessage);
if (CollectionUtils.isNotEmpty(fluxFAReportMessage.getFAReportDocuments())) {
fluxMessageService.saveFishingActivityReportDocuments(fluxFAReportMessage, extractPluginType(request.getPluginType()));
} else {
log.error("[ERROR] After checking faReportDocuments IDs, all of them exist already in Activity DB.. So nothing will be saved!!");
}
break;
case GET_FLUX_FA_QUERY:
log.error("TODO : FAQUERY mappers NOT implemented yet....");
FLUXFAQueryMessage fluxFAQueryMessage = JAXBMarshaller.unmarshallTextMessage(request.getRequest(), FLUXFAQueryMessage.class);
// TODO : Implement me... Map tp real HQl/SQL query and run the query and map the results to FLUXFAReportMessage and send it to
FLUXFAReportMessage faRepQueryResponseAfterMapping = new FLUXFAReportMessage();
activityRulesModuleServiceBean.sendSyncAsyncFaReportToRules(faRepQueryResponseAfterMapping, "getTheOnValueFromSomewahre", request.getRequestType(), jmsMessage.getJMSMessageID());
break;
}
} catch (ActivityModelMarshallException | ServiceException | ActivityModuleException | JMSException e) {
sendError(eventMessage, e);
}
}
use of un.unece.uncefact.data.standard.fluxfareportmessage._3.FLUXFAReportMessage in project UVMS-ActivityModule-APP by UnionVMS.
the class ActivityEventServiceBean method getMapToSubscriptionMessage.
@Override
public void getMapToSubscriptionMessage(@Observes @MapToSubscriptionRequestEvent EventMessage message) {
log.info(GOT_JMS_INSIDE_ACTIVITY_TO_GET + "MapToSubscriptionRequestEvent");
try {
TextMessage jmsMessage = message.getJmsMessage();
String jmsCorrelationID = jmsMessage.getJMSMessageID();
String messageReceived = jmsMessage.getText();
SubscriptionDataRequest subscriptionDataRequest = null;
MapToSubscriptionRequest baseRequest = JAXBUtils.unMarshallMessage(messageReceived, MapToSubscriptionRequest.class);
switch(baseRequest.getMessageType()) {
case FLUX_FA_QUERY_MESSAGE:
FLUXFAQueryMessage fluxfaQueryMessage = JAXBUtils.unMarshallMessage(baseRequest.getRequest(), FLUXFAQueryMessage.class);
subscriptionDataRequest = SubscriptionMapper.mapToSubscriptionDataRequest(fluxfaQueryMessage.getFAQuery());
break;
case FLUX_FA_REPORT_MESSAGE:
FLUXFAReportMessage fluxFAReportMessage = JAXBUtils.unMarshallMessage(baseRequest.getRequest(), FLUXFAReportMessage.class);
subscriptionDataRequest = SubscriptionMapper.mapToSubscriptionDataRequest(fluxFAReportMessage);
break;
default:
sendError(message, new IllegalArgumentException("VERBODEN VRUCHT"));
}
subscriptionProducer.sendMessageWithSpecificIds(JAXBUtils.marshallJaxBObjectToString(subscriptionDataRequest), subscriptionProducer.getDestination(), JMSUtils.lookupQueue(MessageConstants.QUEUE_RULES), null, jmsCorrelationID);
} catch (JAXBException | MessageException | JMSException e) {
sendError(message, e);
}
}
use of un.unece.uncefact.data.standard.fluxfareportmessage._3.FLUXFAReportMessage in project UVMS-ActivityModule-APP by UnionVMS.
the class FluxMessageServiceIT method shouldSaveFaReportDocument.
@Test
public void shouldSaveFaReportDocument() throws Exception {
InputStream is = this.getClass().getClassLoader().getResourceAsStream("fa_flux_message.xml");
JAXBContext jaxbContext = JAXBContext.newInstance(FLUXFAReportMessage.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
FLUXFAReportMessage fluxfaReportMessage = (FLUXFAReportMessage) jaxbUnmarshaller.unmarshal(is);
fluxResponseMessageService.saveFishingActivityReportDocuments(fluxfaReportMessage, FaReportSourceEnum.FLUX);
}
Aggregations