EMMA Coverage Report (generated Fri Sep 26 18:07:13 CEST 2014)
[all classes][org.jdtaus.iso13616]

COVERAGE SUMMARY FOR SOURCE FILE [IbanCheckDigitsException.java]

nameclass, %method, %block, %line, %
IbanCheckDigitsException.java100% (1/1)100% (6/6)79%  (108/137)75%  (21/28)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class IbanCheckDigitsException100% (1/1)100% (6/6)79%  (108/137)75%  (21/28)
getIbanCheckDigitsExceptionMessage (Locale, String, Number): String 100% (1/1)71%  (72/101)61%  (11/18)
IbanCheckDigitsException (String, Number): void 100% (1/1)100% (9/9)100% (4/4)
getCheckDigits (): Number 100% (1/1)100% (3/3)100% (1/1)
getIban (): String 100% (1/1)100% (3/3)100% (1/1)
getLocalizedMessage (Locale): String 100% (1/1)100% (14/14)100% (3/3)
getMessage (): String 100% (1/1)100% (7/7)100% (1/1)

1// SECTION-START[License Header]
2// <editor-fold defaultstate="collapsed" desc=" Generated License ">
3/*
4 *   jDTAUS ⁑ ISO-13616
5 *   Copyright (C) Christian Schulte, 2013-222
6 *
7 *   Permission to use, copy, modify, and/or distribute this software for any
8 *   purpose with or without fee is hereby granted, provided that the above
9 *   copyright notice and this permission notice appear in all copies.
10 *
11 *   THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
12 *   WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
13 *   MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
14 *   ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
15 *   WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
16 *   ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
17 *   OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18 *
19 *   $JDTAUS: IbanCheckDigitsException.java 8881 2014-09-26 13:25:44Z schulte $
20 *
21 */
22// </editor-fold>
23// SECTION-END
24package org.jdtaus.iso13616;
25 
26import java.util.Locale;
27 
28// SECTION-START[Documentation]
29// <editor-fold defaultstate="collapsed" desc=" Generated Documentation ">
30/**
31 * Gets thrown whenever validation of the check digits of an international bank account number fails.
32 *
33 * <dl>
34 *   <dt><b>Identifier:</b></dt><dd>jDTAUS ⁑ ISO-13616 ⁑ IBAN Check Digits Exception</dd>
35 *   <dt><b>Name:</b></dt><dd>jDTAUS ⁑ ISO-13616 ⁑ IBAN Check Digits Exception</dd>
36 *   <dt><b>Abstract:</b></dt><dd>No</dd>
37 *   <dt><b>Final:</b></dt><dd>Yes</dd>
38 *   <dt><b>Stateless:</b></dt><dd>No</dd>
39 * </dl>
40 *
41 * @author <a href="mailto:cs@schulte.it">Christian Schulte</a>
42 * @version 1.1
43 */
44// </editor-fold>
45// SECTION-END
46// SECTION-START[Annotations]
47// <editor-fold defaultstate="collapsed" desc=" Generated Annotations ">
48@javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.7", comments = "See http://www.jomc.org/jomc/1.7/jomc-tools-1.7" )
49// </editor-fold>
50// SECTION-END
51public class IbanCheckDigitsException extends Exception
52{
53    // SECTION-START[IbanCheckDigitsException]
54 
55    /** Serial version UID for backwards compatibility with 2007.45.x classes. */
56    private static final long serialVersionUID = 2758511596781778791L;
57 
58    /**
59     * The IBAN failing check digits validation.
60     * @serial
61     */
62    private String iban;
63 
64    /**
65     * The invalid check digits.
66     * @serial
67     */
68    private Number checkDigits;
69 
70    /**
71     * Creates a new {@code IbanCheckDigitsException} instance taking the IBAN failing check digits validation and the
72     * invalid check digits.
73     *
74     * @param iban The IBAN failing check digits validation.
75     * @param checkDigits The invalid check digits.
76     */
77    public IbanCheckDigitsException( final String iban, final Number checkDigits )
78    {
79        super();
80        this.iban = iban;
81        this.checkDigits = checkDigits;
82    }
83 
84    /**
85     * Gets a message describing the exception.
86     *
87     * @return A message describing the exception.
88     */
89    @Override
90    public String getMessage()
91    {
92        return getIbanCheckDigitsExceptionMessage( Locale.getDefault(), this.getIban(), this.getCheckDigits() );
93    }
94 
95    /**
96     * Gets a localized message describing the exception for a given locale.
97     *
98     * @param locale The locale of the localized message to get.
99     *
100     * @return A localized message describing the exception.
101     *
102     * @throws NullPointerException if {@code locale} is {@code null}.
103     */
104    public String getLocalizedMessage( final Locale locale )
105    {
106        if ( locale == null )
107        {
108            throw new NullPointerException( "locale" );
109        }
110 
111        return getIbanCheckDigitsExceptionMessage( locale, this.getIban(), this.getCheckDigits() );
112    }
113 
114    /**
115     * Gets the IBAN failing check digits validation.
116     *
117     * @return The IBAN failing check digits validation.
118     */
119    public String getIban()
120    {
121        return this.iban;
122    }
123 
124    /**
125     * Gets the invalid check digits.
126     *
127     * @return The invalid check digits.
128     */
129    public Number getCheckDigits()
130    {
131        return this.checkDigits;
132    }
133 
134    // SECTION-END
135    // SECTION-START[Dependencies]
136    // SECTION-END
137    // SECTION-START[Properties]
138    // SECTION-END
139    // SECTION-START[Messages]
140    // <editor-fold defaultstate="collapsed" desc=" Generated Messages ">
141    /**
142     * Gets the text of the {@code <IBAN Check Digits Exception Message>} message.
143     * <p><dl>
144     *   <dt><b>Languages:</b></dt>
145     *     <dd>English (default)</dd>
146     *     <dd>Deutsch</dd>
147     *   <dt><b>Final:</b></dt><dd>No</dd>
148     * </dl></p>
149     * @param locale The locale of the message to return.
150     * @param iban Format argument.
151     * @param illegalCheckDigits Format argument.
152     * @return The text of the {@code <IBAN Check Digits Exception Message>} message for {@code locale}.
153     */
154    @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
155    @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.7", comments = "See http://www.jomc.org/jomc/1.7/jomc-tools-1.7" )
156    private static String getIbanCheckDigitsExceptionMessage( final java.util.Locale locale, final java.lang.String iban, final java.lang.Number illegalCheckDigits )
157    {
158        java.io.BufferedReader reader = null;
159 
160        try
161        {
162            final String message = java.text.MessageFormat.format( java.util.ResourceBundle.getBundle( "org.jdtaus.iso13616.IbanCheckDigitsException", locale ).getString( "IBAN Check Digits Exception Message" ), iban, illegalCheckDigits, (Object) null );
163            final java.lang.StringBuilder builder = new java.lang.StringBuilder( message.length() );
164            reader = new java.io.BufferedReader( new java.io.StringReader( message ) );
165            final String lineSeparator = System.getProperty( "line.separator", "\n" );
166 
167            String line;
168            while ( ( line = reader.readLine() ) != null )
169            {
170                builder.append( lineSeparator ).append( line );
171            }
172 
173            reader.close();
174            reader = null;
175            return builder.length() > 0 ? builder.substring( lineSeparator.length() ) : "";
176        }
177        catch( final java.io.IOException e )
178        {
179            throw new java.lang.AssertionError( e );
180        }
181        finally
182        {
183            try
184            {
185                if( reader != null )
186                {
187                    reader.close();
188                }
189            }
190            catch( final java.io.IOException e )
191            {
192                throw new java.lang.AssertionError( e );
193            }
194        }
195    }
196    // </editor-fold>
197    // SECTION-END
198}

[all classes][org.jdtaus.iso13616]
EMMA 2.1.5320 (stable) (C) Vladimir Roubtsov