Coverage Report - org.mule.api.MessagingException
 
Classes in this File Line Coverage Branch Coverage Complexity
MessagingException
0%
0/42
0%
0/16
0
 
 1  
 /*
 2  
  * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
 3  
  * The software in this package is published under the terms of the CPAL v1.0
 4  
  * license, a copy of which has been included with this distribution in the
 5  
  * LICENSE.txt file.
 6  
  */
 7  
 package org.mule.api;
 8  
 
 9  
 import org.mule.config.MuleManifest;
 10  
 import org.mule.config.i18n.CoreMessages;
 11  
 import org.mule.config.i18n.Message;
 12  
 import org.mule.transport.NullPayload;
 13  
 import org.mule.util.StringUtils;
 14  
 
 15  
 /**
 16  
  * <code>MessagingException</code> is a general message exception thrown when
 17  
  * errors specific to Message processing occur..
 18  
  */
 19  
 
 20  
 public class MessagingException extends MuleException
 21  
 {
 22  
     /**
 23  
      * Serial version
 24  
      */
 25  
     private static final long serialVersionUID = 6941498759267936649L;
 26  
 
 27  
     /**
 28  
      * The MuleMessage being processed when the error occurred
 29  
      */
 30  
     protected final transient MuleMessage muleMessage;
 31  
     
 32  
     /**
 33  
      * The MuleEvent being processed when the error occurred
 34  
      */
 35  
     protected final transient MuleEvent event;
 36  
 
 37  
     /**
 38  
      * @deprecated use MessagingException(Message, MuleEvent)
 39  
      */
 40  
     @Deprecated
 41  
     public MessagingException(Message message, MuleMessage muleMessage)
 42  
     {
 43  0
         super();
 44  0
         this.muleMessage = muleMessage;
 45  0
         this.event = null;
 46  0
         setMessage(generateMessage(message));
 47  0
     }
 48  
 
 49  
     public MessagingException(Message message, MuleEvent event)
 50  
     {
 51  0
         super();
 52  0
         this.event = event;
 53  0
         this.muleMessage = (event != null ? event.getMessage() : null);
 54  0
         setMessage(generateMessage(message));
 55  0
     }
 56  
 
 57  
     /**
 58  
      * @deprecated use MessagingException(Message, MuleEvent, Throwable)
 59  
      */
 60  
     @Deprecated
 61  
     public MessagingException(Message message, MuleMessage muleMessage, Throwable cause)
 62  
     {
 63  0
         super(cause);
 64  0
         this.muleMessage = muleMessage;
 65  0
         this.event = null;
 66  0
         setMessage(generateMessage(message));
 67  0
     }
 68  
 
 69  
     public MessagingException(Message message, MuleEvent event, Throwable cause)
 70  
     {
 71  0
         super(cause);
 72  0
         this.event = event;
 73  0
         this.muleMessage = (event != null ? event.getMessage() : null);
 74  0
         setMessage(generateMessage(message));
 75  0
     }
 76  
 
 77  
     public MessagingException(MuleEvent event, Throwable cause)
 78  
     {
 79  0
         super(cause);
 80  0
         this.event = event;
 81  0
         this.muleMessage = (event != null ? event.getMessage() : null);
 82  0
         setMessage(generateMessage(getI18nMessage()));
 83  0
     }
 84  
 
 85  
     private String generateMessage(Message message)
 86  
     {
 87  0
         StringBuffer buf = new StringBuffer(80);
 88  
 
 89  0
         if (message != null)
 90  
         {
 91  0
             buf.append(message.getMessage()).append(". ");
 92  
         }
 93  
 
 94  0
         if (muleMessage != null)
 95  
         {
 96  0
             Object payload = muleMessage.getPayload();
 97  0
             if (payload == null)
 98  
             {
 99  0
                 payload = NullPayload.getInstance();
 100  
             }
 101  
 
 102  0
             buf.append(CoreMessages.messageIsOfType(payload.getClass()).getMessage());
 103  0
             addInfo("Payload", StringUtils.abbreviate(payload.toString(), 1000));
 104  0
         }
 105  
         else
 106  
         {
 107  0
             buf.append("The current MuleMessage is null! Please report this to ").append(MuleManifest.getDevListEmail());
 108  0
             addInfo("Payload", NullPayload.getInstance().toString());
 109  
         }
 110  
 
 111  0
         return buf.toString();
 112  
     }
 113  
 
 114  
     public MuleMessage getMuleMessage()
 115  
     {
 116  0
         if ((event != null) && (muleMessage == null))
 117  
         {
 118  0
             return event.getMessage();
 119  
         }
 120  0
         return muleMessage;
 121  
     }
 122  
 
 123  
     public MuleEvent getEvent()
 124  
     {
 125  0
         return event;
 126  
     }
 127  
 }