1 /* 2 * Copyright (c) 2003, 2019, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 package java.util; 27 28 /** 29 * Unchecked exception thrown when duplicate flags are provided in the format 30 * specifier. 31 * 32 * <p> Unless otherwise specified, passing a {@code null} argument to any 33 * method or constructor in this class will cause a {@link 34 * NullPointerException} to be thrown. 35 * 36 * @since 1.5 37 */ 38 public class DuplicateFormatFlagsException extends IllegalFormatException { 39 40 @java.io.Serial 41 private static final long serialVersionUID = 18890531L; 42 43 private String flags; 44 45 /** 46 * Constructs an instance of this class with the specified flags. 47 * 48 * @param f 49 * The set of format flags which contain a duplicate flag. 50 */ DuplicateFormatFlagsException(String f)51 public DuplicateFormatFlagsException(String f) { 52 if (f == null) 53 throw new NullPointerException(); 54 this.flags = f; 55 } 56 57 /** 58 * Returns the set of flags which contains a duplicate flag. 59 * 60 * @return The flags 61 */ getFlags()62 public String getFlags() { 63 return flags; 64 } 65 getMessage()66 public String getMessage() { 67 return String.format("Flags = '%s'", flags); 68 } 69 } 70