Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
/*
 * Copyright (C) 2012 Andrew Neal
 * Copyright (C) 2014 The CyanogenMod Project
 * Licensed under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with the
 * License. You may obtain a copy of the License at
 * http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law
 * or agreed to in writing, software distributed under the License is
 * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied. See the License for the specific language
 * governing permissions and limitations under the License.
 */

public class Main {
    /**
     * make a useful message from an exception without the stack track
     */
    public static String formatException(String message, Exception e) {
        StringBuilder builder = new StringBuilder();
        if (message != null) {
            builder.append(message);
            if (e != null) {
                builder.append(" - ");
            }
        }

        if (e != null) {
            builder.append(e.getClass().getSimpleName());

            String exceptionMessage = e.getMessage();
            if (exceptionMessage != null) {
                builder.append(": ");
                builder.append(exceptionMessage);
            }

            for (Throwable cause = e.getCause(); cause != null; cause = cause.getCause()) {
                builder.append(" (cause ");
                builder.append(cause.getClass().getSimpleName());
                String causeMessage = e.getMessage();
                if (causeMessage != null) {
                    builder.append(": ");
                    builder.append(exceptionMessage);
                }
                builder.append(")");
            }
        }

        return builder.toString();
    }
}