1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache license, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the license for the specific language governing permissions and
15 * limitations under the license.
16 */
17 package org.apache.logging.log4j.core.jmx;
18
19 /**
20 * Utility class providing common validation logic.
21 */
22 public class Assert {
23 private Assert() {
24 }
25
26 /**
27 * Throws a {@code NullPointerException} if the specified parameter is
28 * {@code null}, otherwise returns the specified parameter.
29 * <p>
30 * Usage:
31 *
32 * <pre>
33 * // earlier you would write this:
34 * public SomeConstructor(Object param) {
35 * if (param == null) {
36 * throw new NullPointerException(name + " is null");
37 * }
38 * this.field = param;
39 * }
40 *
41 * // now you can do the same in one line:
42 * public SomeConstructor(Object param) {
43 * this.field = Assert.isNotNull(param);
44 * }
45 * </pre>
46 *
47 * @param checkMe the parameter to check
48 * @param name name of the parameter to use in the error message if
49 * {@code null}
50 * @return the specified parameter
51 */
52 public static <T> T isNotNull(T checkMe, String name) {
53 if (checkMe == null) {
54 throw new NullPointerException(name + " is null");
55 }
56 return checkMe;
57 }
58 }