/** * Clones a <code>List</code> of <code>TransactionEntry(s)</code> * * @param fees <code>List</code> of fees to clone */ public void setTransactionEntries(final List<TransactionEntry> fees) { feeList = new ArrayList<>(); if (fees.size() == 1) { TransactionEntry e = fees.get(0); if (e.getCreditAccount().equals(e.getDebitAccount())) { feeField.setDecimal(e.getAmount(account).abs()); } else { try { feeList.add((TransactionEntry) e.clone()); // copy over the provided set's entry } catch (CloneNotSupportedException e1) { Logger.getLogger(FeePanel.class.getName()) .log(Level.SEVERE, e1.getLocalizedMessage(), e1); } feeField.setDecimal(sumFees().abs()); } } else { for (TransactionEntry entry : fees) { // clone the provided set's entries try { feeList.add((TransactionEntry) entry.clone()); } catch (CloneNotSupportedException e) { Logger.getLogger(FeePanel.class.getName()).log(Level.SEVERE, e.toString(), e); } } feeField.setDecimal(sumFees().abs()); } feeField.setEditable(feeList.size() < 1); }
private void updateAccountCode(final Account account, final Integer code) { final Engine engine = EngineFactory.getEngine(EngineFactory.DEFAULT); if (engine != null) { try { final Account template = (Account) account.clone(); template.setAccountCode(code); engine.modifyAccount(template, account); } catch (final CloneNotSupportedException e) { Logger.getLogger(AccountsViewController.class.getName()) .log(Level.SEVERE, e.getLocalizedMessage(), e); } } }
/* * (non-Javadoc) * * @see com.ebay.jetstream.messaging.JetstreamMessageListener#onMessage(com.ebay.jetstream.messaging.JetstreamMessage) */ public void onMessage(JetstreamMessage m) { if (m instanceof AdvisoryMessage) { AdvisoryMessage advise = (AdvisoryMessage) m; if (advise.isStopSending() && matchesMyPublishingContexts(advise.getAdvisoryTopic().getRootContext())) { LOGGER.warn("Outbound Messaging Channel raising alarm"); setTopicAlarmState(advise.getAdvisoryTopic().getRootContext()); incrementAlarmsRaisedCounter(); if (areAllContextsInAlarmCondition()) { m_alarmRaised.set(true); getAlarmListener().alarm(ChannelAlarm.OVERRUN); postAlert("All Contexts in Alarm Condition - ", AlertStrength.ORANGE); } } else if (advise.isResumeSending() && matchesMyPublishingContexts(advise.getAdvisoryTopic().getRootContext())) { LOGGER.info( "Outbound Messaging Channel clearing alarm for topic-> " + advise.getAdvisoryTopic().getRootContext()); resetTopicAlarmState(advise.getAdvisoryTopic().getRootContext()); if (!areAllContextsInAlarmCondition()) { m_alarmRaised.set(false); getAlarmListener().alarm(ChannelAlarm.CLEAR); postAlert("Alarm Condition Cleared - ", AlertStrength.YELLOW); incrementAlarmsClearedCounter(); } } else if (advise.isResendMessage()) { JetstreamEvent evt = (JetstreamEvent) ((Any) ((AdvisoryMessage) m).getUndeliveredMsg()).getObject(); try { evt = evt.clone(); } catch (CloneNotSupportedException e) { m_errors.registerError(e); LOGGER.debug("Failed to clone event : Exception = " + e.getLocalizedMessage()); this.incrementEventDroppedCounter(); return; } List<String> topics = m_address.getChannelTopics(); String topic = ((AdvisoryMessage) m).getAdvisoryTopic().toString(); // Fix issue when multiple OMCs subscribe different topics under same context. // Each OMC will receive broadcast advisory events. if (topic == null || topics.contains(topic)) { evt.put(JetstreamReservedKeys.EventReplayTopic.toString(), topic); Integer retryCount = 1; if (evt != null) { if (evt.containsKey(JetstreamReservedKeys.RetryCount.toString())) { retryCount = (Integer) evt.get(JetstreamReservedKeys.RetryCount.toString()); retryCount++; } evt.put(JetstreamReservedKeys.RetryCount.toString(), retryCount); sendToAdviceListener( evt, RetryEventCode.MSG_RETRY, AdvisoryCode.RESEND_MESSAGE.toString()); incrementRetryAdvisoryEvents(); } } } } }