001 /*
002 * file StpMessageException.java
003 *
004 * (C) Copyright IBM Corporation 2008, 2014. All Rights Reserved.
005 * Note to U.S. Government Users Restricted Rights: Use, duplication or
006 * disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
007 *
008 * The source code for this program is not published or otherwise
009 * divested of its trade secrets, irrespective of what has been
010 * deposited with the U.S. Copyright Office.
011 */
012
013 package com.ibm.rational.wvcm.stp;
014
015 import javax.wvcm.Resource;
016 import javax.wvcm.ResourceList;
017 import javax.wvcm.WvcmException.ReasonCode;
018
019 import com.ibm.rational.wvcm.stp.StpPartialResultsException.PartialResultsData;
020 import com.ibm.rational.wvcm.stp.StpPropertyException.PropertyData;
021
022 /**
023 * An StpException used to pass an error message string generated by the domain
024 * application through the CM API without further adornment.
025 */
026 public abstract class StpErrorMessageException extends StpPropertyException
027 {
028 /**
029 * @return The message string exactly as generated by the domain application
030 * without the additional context information provided by the server
031 * or client libraries when forming the string returned by the
032 * toString, getMessage or getLocalizedMessage methods of this
033 * Throwable object.
034 */
035 public String errorMessage()
036 {
037 return ((ErrorMessageData)data()).errorMessage();
038 }
039
040 /*
041 * @param resource
042 * @param reasonCode
043 * @param nestedExceptions
044 */
045 protected StpErrorMessageException(Resource resource,
046 ReasonCode reasonCode,
047 Throwable... nestedExceptions)
048 {
049 super(resource, reasonCode, nestedExceptions);
050 }
051
052 /**
053 * The interface for the data implementation object for this type of
054 * exception
055 */
056 public interface ErrorMessageData extends PropertyData {
057 public String errorMessage();
058 }
059 }