List of usage examples for org.apache.commons.lang.builder ToStringBuilder reflectionToString
public static String reflectionToString(Object object)
Forwards to ReflectionToStringBuilder
.
From source file:nl.nn.adapterframework.align.XmlAligner.java
protected int determineIsParentOfSingleMultipleOccurringChildElement(XSParticle particle) { if (particle == null) { log.warn("Particle is null, is this a problem? Appearantly not"); return CHILD_OCCURRENCE_EMPTY; }/*from w ww . jav a 2s . c om*/ XSTerm term = particle.getTerm(); if (term == null) { throw new IllegalStateException( "determineIsParentOfSingleMultipleOccurringChildElement particle.term is null"); } if (DEBUG) log.debug("determineIsParentOfSingleMultipleOccurringChildElement() term name [" + term.getName() + "] occurring unbounded [" + particle.getMaxOccursUnbounded() + "] max occur [" + particle.getMaxOccurs() + "] term [" + ToStringBuilder.reflectionToString(term) + "]"); if (term instanceof XSModelGroup) { XSModelGroup modelGroup = (XSModelGroup) term; short compositor = modelGroup.getCompositor(); XSObjectList particles = modelGroup.getParticles(); switch (compositor) { case XSModelGroup.COMPOSITOR_SEQUENCE: case XSModelGroup.COMPOSITOR_ALL: { if (DEBUG) log.debug("determineIsParentOfSingleMultipleOccurringChildElement() sequence or all particles [" + ToStringBuilder.reflectionToString(particles) + "]"); int result = CHILD_OCCURRENCE_EMPTY; for (int i = 0; i < particles.getLength(); i++) { XSParticle childParticle = (XSParticle) particles.item(i); int current = determineIsParentOfSingleMultipleOccurringChildElement(childParticle); if (DEBUG) log.debug( "determineIsParentOfSingleMultipleOccurringChildElement() sequence or all, particle [" + i + "] current result [" + CHILD_OCCURRENCE_DESCRIPTION[current] + "]"); switch (current) { case CHILD_OCCURRENCE_EMPTY: break; case CHILD_OCCURRENCE_ONE_SINGLE_OCCURRING_ELEMENT: case CHILD_OCCURRENCE_ONE_MULTIPLE_OCCURRING_ELEMENT: if (result > CHILD_OCCURRENCE_EMPTY) { if (DEBUG) log.debug( "determineIsParentOfSingleMultipleOccurringChildElement() sequence or all, result [" + CHILD_OCCURRENCE_DESCRIPTION[result] + "] current [" + CHILD_OCCURRENCE_DESCRIPTION[current] + "]"); return CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING; } result = current; break; case CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING: return CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING; default: throw new IllegalStateException( "determineIsParentOfSingleMultipleOccurringChildElement child occurrence [" + CHILD_OCCURRENCE_DESCRIPTION[current] + "]"); } } if (DEBUG) log.debug( "determineIsParentOfSingleMultipleOccurringChildElement() end of sequence or all, returning [" + CHILD_OCCURRENCE_DESCRIPTION[result] + "]"); return result; } case XSModelGroup.COMPOSITOR_CHOICE: { if (DEBUG) log.debug("determineIsParentOfSingleMultipleOccurringChildElement() choice particles [" + ToStringBuilder.reflectionToString(particles) + "]"); if (particles.getLength() == 0) { if (DEBUG) log.debug( "determineIsParentOfSingleMultipleOccurringChildElement() choice length 0, returning [" + CHILD_OCCURRENCE_DESCRIPTION[CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING] + "]"); return CHILD_OCCURRENCE_EMPTY; } int result = determineIsParentOfSingleMultipleOccurringChildElement((XSParticle) particles.item(0)); if (result == CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING) { if (DEBUG) log.debug( "determineIsParentOfSingleMultipleOccurringChildElement() choice single mixed, returning [" + CHILD_OCCURRENCE_DESCRIPTION[CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING] + "]"); return CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING; } for (int i = 1; i < particles.getLength(); i++) { XSParticle childParticle = (XSParticle) particles.item(i); int current = determineIsParentOfSingleMultipleOccurringChildElement(childParticle); if (current != result) { if (DEBUG) log.debug( "determineIsParentOfSingleMultipleOccurringChildElement() break out of choice, returning [" + CHILD_OCCURRENCE_DESCRIPTION[CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING] + "]"); return CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING; } } if (DEBUG) log.debug("determineIsParentOfSingleMultipleOccurringChildElement() end of choice, returning [" + CHILD_OCCURRENCE_DESCRIPTION[result] + "]"); return result; } default: throw new IllegalStateException( "determineIsParentOfSingleMultipleOccurringChildElement modelGroup.compositor is not COMPOSITOR_SEQUENCE, COMPOSITOR_ALL or COMPOSITOR_CHOICE, but [" + compositor + "]"); } } if (term instanceof XSElementDeclaration) { XSElementDeclaration elementDeclaration = (XSElementDeclaration) term; String elementName = elementDeclaration.getName(); if (DEBUG) log.debug("determineIsParentOfSingleMultipleOccurringChildElement() ElementDeclaration name [" + elementName + "] unbounded [" + particle.getMaxOccursUnbounded() + "] maxOccurs [" + particle.getMaxOccurs() + "]"); if (particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1) { return CHILD_OCCURRENCE_ONE_MULTIPLE_OCCURRING_ELEMENT; } if (particle.getMaxOccurs() == 1) { return CHILD_OCCURRENCE_ONE_SINGLE_OCCURRING_ELEMENT; } return CHILD_OCCURRENCE_EMPTY; } if (term instanceof XSWildcard) { return CHILD_OCCURRENCE_MULTIPLE_ELEMENTS_OR_NOT_MULTIPLE_OCCURRING; } throw new IllegalStateException("determineIsParentOfSingleMultipleOccurringChildElement unknown Term type [" + term.getClass().getName() + "]"); }
From source file:nl.nn.adapterframework.align.XmlAligner.java
protected Set<String> findMultipleOccurringChildElements(XSParticle particle) { Set<String> result = new HashSet<String>(); if (particle == null) { log.warn("findMultipleOccurringChildElements() typeDefinition particle is null, is this a problem?"); return result; }//from w ww . jav a 2s . c o m XSTerm term = particle.getTerm(); if (term == null) { throw new IllegalStateException("findMultipleOccurringChildElements particle.term is null"); } if (DEBUG) log.debug("findMultipleOccurringChildElements() term name [" + term.getName() + "] occurring unbounded [" + particle.getMaxOccursUnbounded() + "] max occur [" + particle.getMaxOccurs() + "] term [" + ToStringBuilder.reflectionToString(term) + "]"); if (particle.getMaxOccursUnbounded() || particle.getMaxOccurs() > 1) { collectChildElements(particle, result); return result; } if (term instanceof XSModelGroup) { XSModelGroup modelGroup = (XSModelGroup) term; XSObjectList particles = modelGroup.getParticles(); if (DEBUG) log.debug("findMultipleOccurringChildElements() modelGroup particles [" + ToStringBuilder.reflectionToString(particles) + "]"); for (int i = 0; i < particles.getLength(); i++) { XSParticle childParticle = (XSParticle) particles.item(i); result.addAll(findMultipleOccurringChildElements(childParticle)); } } return result; }
From source file:nl.nn.adapterframework.align.XmlAligner.java
public XSTypeDefinition getTypeDefinition(PSVIProvider psviProvider) { ElementPSVI elementPSVI = psviProvider.getElementPSVI(); if (DEBUG)// w w w.j a v a 2 s .c om log.debug("getTypeDefinition() elementPSVI [" + ToStringBuilder.reflectionToString(elementPSVI) + "]"); XSElementDeclaration elementDeclaration = elementPSVI.getElementDeclaration(); if (DEBUG) log.debug("getTypeDefinition() elementPSVI element declaration [" + ToStringBuilder.reflectionToString(elementDeclaration) + "]"); if (elementDeclaration == null) { return null; } XSTypeDefinition typeDefinition = elementDeclaration.getTypeDefinition(); if (DEBUG) log.debug("getTypeDefinition() elementDeclaration typeDefinition [" + ToStringBuilder.reflectionToString(typeDefinition) + "]"); return typeDefinition; }
From source file:nl.nn.adapterframework.extensions.ifsa.jms.IfsaFacade.java
protected QueueSender createSender(QueueSession session, Queue queue) throws IfsaException { try {/*from w ww .j a v a2s. c o m*/ QueueSender queueSender = session.createSender(queue); if (log.isDebugEnabled()) { log.debug(getLogPrefix() + "got queueSender [" + ToStringBuilder.reflectionToString((IFSAQueueSender) queueSender) + "]"); } return queueSender; } catch (Exception e) { throw new IfsaException(e); } }
From source file:nl.nn.adapterframework.extensions.ifsa.jms.IfsaFacade.java
/** * Gets the queueReceiver, by utilizing the <code>getInputQueue()</code> method.<br/> * For serverside getQueueReceiver() the creating of the QueueReceiver is done * without the <code>selector</code> information, as this is not allowed * by IFSA.<br/>// w w w . ja va2 s. com * For a clientconnection, the receiver is done with the <code>getClientReplyQueue</code> * @see javax.jms.QueueReceiver */ protected QueueReceiver getServiceReceiver(QueueSession session) throws IfsaException { try { QueueReceiver queueReceiver; if (isProvider()) { String selector = getProviderSelector(); if (StringUtils.isEmpty(selector)) { queueReceiver = session.createReceiver(getServiceQueue()); } else { //log.debug(getLogPrefix()+"using selector ["+selector+"]"); try { queueReceiver = session.createReceiver(getServiceQueue(), selector); } catch (JMSException e) { log.warn("caught exception, probably due to use of selector [" + selector + "], falling back to non-selected mode", e); queueReceiver = session.createReceiver(getServiceQueue()); } } } else { throw new IfsaException("cannot obtain ServiceReceiver: Requestor cannot act as Provider"); } if (log.isDebugEnabled() && !isSessionsArePooled()) { log.debug(getLogPrefix() + "got receiver for queue [" + queueReceiver.getQueue().getQueueName() + "] " + ToStringBuilder.reflectionToString(queueReceiver)); } return queueReceiver; } catch (JMSException e) { throw new IfsaException(e); } }
From source file:nl.nn.adapterframework.extensions.ifsa.jms.IfsaMessagingSourceFactory.java
protected ConnectionFactory createConnectionFactory(Context context, String applicationId, boolean createDestination, boolean useJms102) throws IbisException, NamingException { IFSAQueueConnectionFactory ifsaQueueConnectionFactory = (IFSAQueueConnectionFactory) ((IFSAContext) context) .lookupBusConnection(applicationId); if (log.isDebugEnabled()) { log.debug("IfsaConnection for application [" + applicationId + "] got ifsaQueueConnectionFactory with properties:" + ToStringBuilder.reflectionToString(ifsaQueueConnectionFactory) + "\n" + " isServer: " + ifsaQueueConnectionFactory.IsServer() + "\n" + " isClientNonTransactional:" + ifsaQueueConnectionFactory.IsClientNonTransactional() + "\n" + " isClientTransactional:" + ifsaQueueConnectionFactory.IsClientTransactional() + "\n" + " isClientServerNonTransactional:" + ifsaQueueConnectionFactory.IsClientServerNonTransactional() + "\n" + " isServerTransactional:" + ifsaQueueConnectionFactory.IsClientServerTransactional() + "\n"); }//from w w w . j a v a 2s . c o m if (!preJms22Api) { try { IFSAGate gate = IFSAGate.getInstance(); xaEnabled = gate.isXA(); log.info("IFSA JMS XA enabled [" + xaEnabled + "]"); log.info("IFSA JMS hasDynamicReplyQueue: " + ((IFSAContext) context).hasDynamicReplyQueue()); } catch (Throwable t) { log.info("caught exception determining IfsaJms v2.2+ features:", t); } } else { log.info("for IFSA JMS versions prior to 2.2 capability of XA support cannot be determined"); } return ifsaQueueConnectionFactory; }
From source file:nl.nn.adapterframework.extensions.ifsa.jms.IfsaRequesterSender.java
/** * Execute a request to the IFSA service. * @return in Request/Reply, the retrieved message or TIMEOUT, otherwise null *//*from www. j a v a 2 s . c om*/ public String sendMessage(String dummyCorrelationId, String message, Map params, String bifName, byte btcData[]) throws SenderException, TimeOutException { String result = null; QueueSession session = null; QueueSender sender = null; Map udzMap = null; try { log.debug(getLogPrefix() + "creating session and sender"); session = createSession(); IFSAQueue queue; if (params != null && params.size() > 0) { // Use first param as serviceId String serviceId = (String) params.get("serviceId"); if (serviceId == null) { serviceId = getServiceId(); } String occurrence = (String) params.get("occurrence"); if (occurrence != null) { int i = serviceId.indexOf('/', serviceId.indexOf('/', serviceId.indexOf('/', serviceId.indexOf('/') + 1) + 1) + 1); int j = serviceId.indexOf('/', i + 1); serviceId = serviceId.substring(0, i + 1) + occurrence + serviceId.substring(j); } queue = getMessagingSource().lookupService(getMessagingSource().polishServiceId(serviceId)); if (queue == null) { throw new SenderException( getLogPrefix() + "got null as queue for serviceId [" + serviceId + "]"); } if (log.isDebugEnabled()) { log.info(getLogPrefix() + "got Queue to send messages on [" + queue.getQueueName() + "]"); } // Use remaining params as outgoing UDZs udzMap = new HashMap(); udzMap.putAll(params); udzMap.remove("serviceId"); udzMap.remove("occurrence"); } else { queue = getServiceQueue(); } sender = createSender(session, queue); log.debug(getLogPrefix() + "sending message with bifName [" + bifName + "]"); TextMessage sentMessage = sendMessage(session, sender, message, udzMap, bifName, btcData); log.debug(getLogPrefix() + "message sent"); if (isSynchronous()) { log.debug(getLogPrefix() + "waiting for reply"); Message msg = getRawReplyMessage(session, queue, sentMessage); try { long tsReplyReceived = System.currentTimeMillis(); long tsRequestSent = sentMessage.getJMSTimestamp(); long tsReplySent = msg.getJMSTimestamp(); // long jmsTimestampRcvd = msg.getJMSTimestamp(); //// long businessProcFinishSent=0; // long businessProcStartRcvd=0; // long businessProcStartSent=0; // long businessProcFinishRcvd=0; // if (sentMessage instanceof IFSAMessage) { // businessProcStartSent=((IFSAMessage)sentMessage).getBusinessProcessingStartTime(); //// businessProcFinishSent=((IFSAMessage)sentMessage).getBusinessProcessingFinishTime(); // } // if (msg instanceof IFSAMessage) { // businessProcStartRcvd=((IFSAMessage)msg).getBusinessProcessingStartTime(); // businessProcFinishRcvd=((IFSAMessage)msg).getBusinessProcessingFinishTime(); // } if (log.isInfoEnabled()) { log.info(getLogPrefix() + "A) RequestSent [" + DateUtils.format(tsRequestSent) + "]"); log.info(getLogPrefix() + "B) ReplySent [" + DateUtils.format(tsReplySent) + "] diff (~queing + processing) [" + (tsReplySent - tsRequestSent) + "]"); log.info(getLogPrefix() + "C) ReplyReceived [" + DateUtils.format(tsReplyReceived) + "] diff (transport of reply )[" + (tsReplyReceived - tsReplySent) + "]"); // log.info(getLogPrefix()+"C2) msgRcvd.businessProcStartRcvd ["+DateUtils.format(businessProcStartRcvd) +"] "); // log.info(getLogPrefix()+"D) msgRcvd.jmsTimestamp ["+DateUtils.format(jmsTimestampRcvd) +"] diff ["+(jmsTimestampRcvd-businessProcStartSent)+"]"); // log.info(getLogPrefix()+"E) msgRcvd.businessProcFinishRcvd ["+DateUtils.format(businessProcFinishRcvd)+"] diff ["+(businessProcFinishRcvd-jmsTimestampRcvd)+"] (=time spend on IFSA bus sending result?)"); // log.info(getLogPrefix()+"F) timestampAfterRcvd ["+DateUtils.format(timestampAfterRcvd) +"] diff ["+(timestampAfterRcvd-businessProcFinishRcvd)+"] "); // log.info(getLogPrefix()+"business processing time (E-C1) ["+(businessProcFinishRcvd-businessProcStartSent)+"] "); } // if (businessProcessTimes!=null) { // businessProcessTimes.addValue(businessProcFinishRcvd-businessProcStartSent); // } } catch (JMSException e) { log.warn(getLogPrefix() + "exception determining processing times", e); } if (msg instanceof TextMessage) { result = ((TextMessage) msg).getText(); } else { if (msg.getClass().getName().endsWith("IFSAReportMessage")) { if (msg instanceof IFSAReportMessage) { IFSAReportMessage irm = (IFSAReportMessage) msg; if (isThrowExceptions()) { throw new SenderException(getLogPrefix() + "received IFSAReportMessage [" + ToStringBuilder.reflectionToString(irm) + "], NoReplyReason [" + irm.getNoReplyReason() + "]"); } log.warn(getLogPrefix() + "received IFSAReportMessage [" + ToStringBuilder.reflectionToString(irm) + "], NoReplyReason [" + irm.getNoReplyReason() + "]"); result = "<IFSAReport>" + "<NoReplyReason>" + irm.getNoReplyReason() + "</NoReplyReason>" + "</IFSAReport>"; } } else { log.warn(getLogPrefix() + "received neither TextMessage nor IFSAReportMessage but [" + msg.getClass().getName() + "]"); result = msg.toString(); } } if (result == null) { log.info(getLogPrefix() + "received null reply"); } else { if (log.isDebugEnabled()) { if (AppConstants.getInstance().getBoolean("log.logIntermediaryResults", false)) { log.debug(getLogPrefix() + "received reply [" + result + "]"); } else { log.debug(getLogPrefix() + "received reply"); } } else { log.info(getLogPrefix() + "received reply"); } } } else { result = sentMessage.getJMSMessageID(); } } catch (JMSException e) { throw new SenderException(getLogPrefix() + "caught JMSException in sendMessage()", e); } catch (IfsaException e) { throw new SenderException(getLogPrefix() + "caught IfsaException in sendMessage()", e); } finally { if (sender != null) { try { log.debug(getLogPrefix() + "closing sender"); sender.close(); } catch (JMSException e) { log.debug(getLogPrefix() + "Exception closing sender", e); } } closeSession(session); } if (isThrowExceptions() && result != null && result.startsWith("<exception>")) { throw new SenderException("Retrieved exception message from IFSA bus: " + result); } return result; }
From source file:nl.nn.adapterframework.extensions.ifsa.jms.PullingIfsaProviderListener.java
/** * Retrieves messages to be processed by the server, implementing an IFSA-service, but does no processing on it. *///from www . ja va 2 s. c om public Object getRawMessage(Map threadContext) throws ListenerException { Object result = null; QueueSession session = null; QueueReceiver receiver = null; threadContext.remove(THREAD_CONTEXT_ORIGINAL_RAW_MESSAGE_KEY); try { session = getSession(threadContext); try { receiver = getReceiver(threadContext, session); result = receiver.receive(getTimeOut()); while (result == null && canGoOn() && !JtaUtil.inTransaction()) { result = receiver.receive(getTimeOut()); } } catch (Exception e) { throw new ListenerException(getLogPrefix(), e); } finally { releaseReceiver(receiver); } } finally { if (sessionNeedsToBeSavedForAfterProcessMessage(result)) { threadContext.put(THREAD_CONTEXT_SESSION_KEY, session); } else { releaseSession(session); } } if (result instanceof IFSAPoisonMessage) { IFSAHeader header = ((IFSAPoisonMessage) result).getIFSAHeader(); String source; try { source = header.getIFSA_Source(); } catch (Exception e) { source = "unknown due to exeption:" + e.getMessage(); } String msg = getLogPrefix() + "received IFSAPoisonMessage " + "source [" + source + "]" + "content [" + ToStringBuilder.reflectionToString((IFSAPoisonMessage) result) + "]"; log.warn(msg); } try { if ((result instanceof IFSATextMessage || result instanceof IFSAPoisonMessage) && JtaUtil.inTransaction()) { threadContext.put(THREAD_CONTEXT_ORIGINAL_RAW_MESSAGE_KEY, result); result = new MessageWrapper(result, this); } } catch (Exception e) { throw new ListenerException("cannot wrap non serialzable message in wrapper", e); } return result; }
From source file:nl.nn.adapterframework.extensions.ifsa.jms.PullingIfsaProviderListener.java
/** * Extracts string from message obtained from {@link #getRawMessage(Map)}. May also extract * other parameters from the message and put those in the threadContext. * @return input message for adapter.//from ww w . ja v a 2 s . c o m */ public String getStringFromRawMessage(Object rawMessage, Map threadContext) throws ListenerException { if (rawMessage instanceof IMessageWrapper) { return getStringFromWrapper((IMessageWrapper) rawMessage, threadContext); } if (rawMessage instanceof IFSAPoisonMessage) { IFSAPoisonMessage pm = (IFSAPoisonMessage) rawMessage; IFSAHeader header = pm.getIFSAHeader(); String source; try { source = header.getIFSA_Source(); } catch (Exception e) { source = "unknown due to exeption:" + e.getMessage(); } return "<poisonmessage>" + " <source>" + source + "</source>" + " <contents>" + XmlUtils.encodeChars(ToStringBuilder.reflectionToString(pm)) + "</contents>" + "</poisonmessage>"; } TextMessage message = null; try { message = (TextMessage) rawMessage; } catch (ClassCastException e) { log.warn(getLogPrefix() + "message received was not of type TextMessage, but [" + rawMessage.getClass().getName() + "]", e); return null; } try { return message.getText(); } catch (JMSException e) { throw new ListenerException(getLogPrefix(), e); } }
From source file:nl.nn.adapterframework.extensions.ifsa.jms.PushingIfsaProviderListener.java
/** * Extracts string from message obtained from {@link #getRawMessage(Map)}. May also extract * other parameters from the message and put those in the threadContext. * @return input message for adapter.//from w ww . j av a 2 s .c om */ public String getStringFromRawMessage(Object rawMessage, Map threadContext) throws ListenerException { if (rawMessage instanceof IMessageWrapper) { return getStringFromWrapper((IMessageWrapper) rawMessage, threadContext); } if (rawMessage instanceof IFSAPoisonMessage) { IFSAPoisonMessage pm = (IFSAPoisonMessage) rawMessage; IFSAHeader header = pm.getIFSAHeader(); String source; try { source = header.getIFSA_Source(); } catch (Exception e) { source = "unknown due to exeption:" + e.getMessage(); } return "<poisonmessage>" + " <source>" + source + "</source>" + " <contents>" + XmlUtils.encodeChars(ToStringBuilder.reflectionToString(pm)) + "</contents>" + "</poisonmessage>"; } TextMessage message = null; try { message = (TextMessage) rawMessage; } catch (ClassCastException e) { log.warn(getLogPrefix() + "message received was not of type TextMessage, but [" + rawMessage.getClass().getName() + "]", e); return null; } try { String result = message.getText(); threadContext.put(THREAD_CONTEXT_ORIGINAL_RAW_MESSAGE_KEY, message); return result; } catch (JMSException e) { throw new ListenerException(getLogPrefix(), e); } }